브론즈 V
https://www.acmicpc.net/problem/27433
27433번: 팩토리얼 2
0보다 크거나 같은 정수 N이 주어진다. 이때, N!을 출력하는 프로그램을 작성하시오.
www.acmicpc.net
문제
0보다 크거나 같은 정수 N이 주어진다. 이때, N!을 출력하는 프로그램을 작성하시오.
입력
첫째 줄에 정수 N(0 ≤ N ≤ 20)이 주어진다.
출력
첫째 줄에 N!을 출력한다.
접근방법
재귀를 이용하여 n * (n - 1)이 n이 0이 될 때까지 반복하여 N!를 계산하였다.
코드
package 재귀;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
public class BRONZE5_BJ27433 {
/*
https://www.acmicpc.net/problem/27433
팩토리얼2
*/
public static void main(String args[]) throws IOException{
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
//N입력
long N = Integer.parseInt(br.readLine());
System.out.println(calculate(N));
}
public static long calculate(long n){
if(n == 0)
return 1;
else{
return (n * calculate(n - 1));
}
}
}
'💻 Algorithm > 재귀' 카테고리의 다른 글
[JAVA] 백준 24060 - 알고리즘 수업- 병합 정렬 1 (2) | 2023.11.23 |
---|---|
[JAVA] 백준 25501 - 재귀의 귀재 (1) | 2023.11.22 |
[JAVA] 백준 10870 - 피보나치5 (0) | 2023.11.21 |