알고리즘
[백준] 10872번 : 팩토리얼 _ JAVA ( 주석 설명 ) 본문
1번
→ 비재귀
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
public class Main {
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); //빠른 입력을 위해 버퍼를 이용해 입력을 받는다.
int N = Integer.parseInt(br.readLine()); //N! 계산을 위한 N을 입력받는다.
int fact; //팩토리얼 변수
fact = 1;
for(int i=1;i<=N;++i){
fact *= i; //팩토리얼을 계산한다.
}
System.out.println(fact); //계산한 값을 출력한다.
}
}
2번
→ 재귀
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
public class Main {
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); //빠른 입력을 위해 버퍼를 이용해 입력을 받는다.
int N = Integer.parseInt(br.readLine()); //N! 계산을 위한 N을 입력받는다.
int fact;
fact = solve(N); //N!을 구하기 위한 재귀함수를 실행한다.
System.out.println(fact); //N!을 출력한다.
}
private static int solve(int N) {
if(N>0) //N이 0보다 클 때까지만 해당 재귀를 반복한다.
return N*solve(N-1);
else
return 1; //0!은 1이다.
}
}
'백준 - JAVA > 재귀' 카테고리의 다른 글
[백준] 11729번 : 하노이 탑 이동 순서 _ JAVA ( 주석 설명 ) (0) | 2023.02.14 |
---|---|
[백준] 2447번 : 별 찍기 - 10 _ JAVA ( 주석 설명 ) (0) | 2023.02.14 |
[백준] 25501번 : 재귀의 귀재 _ JAVA ( 주석 설명 ) (0) | 2023.02.10 |
[백준] 10870번 : 피보나치 수 5 _ JAVA ( 주석 설명 ) (0) | 2023.02.10 |