설명
자연수 N이 입력되면 N!을 구하는 프로그램을 작성하세요.
입력
첫 번째 줄에 자연수 N(1<=N<=100)이 주어집니다.
출력
첫 번째 줄에 N팩토리얼 값을 출력합니다.
예시 입력 1
5
예시 출력 1
120
문제 해결
팩토리얼은 에 대해 N ×( N −1 )×( N −2 ) ×...×1과 같이 계산되는 것을 말한다.
팩토리얼은 N 일 때 1을 반환한다.
그리고 그 이후부터 팩토리얼의 정의에 따라, 이 1보다 크면 에 의 결과를 곱하여 반환하는 과정을 반복하면 된다.
최종 코드
import java.util.Scanner;
public class P03_팩토리얼 {
public static void main(String[] args) {
Scanner in = new Scanner(System.in);
int N = in.nextInt();
System.out.println(DFS(N));
}
public static int DFS(int n) {
if(n==1) return 1;
else {
return n * DFS(n-1);
}
}
}
반응형
'알고리즘 문제풀이 입문: 코딩테스트 대비 > 섹션 7. Recursive, Tree, Graph(DFS,BFS 기초)' 카테고리의 다른 글
Tree 말단 노드까지 가장 짧은 경로 (DFS, BFS) (0) | 2024.05.08 |
---|---|
이진트리 레벨탐색 (BFS : Breadth-First Search) (0) | 2024.05.07 |
부분집합 구하기 (DFS) (0) | 2024.04.30 |
이진트리 순회 (DFS : Depth-First Search) (0) | 2024.04.29 |
피보나치 재귀 (메모이제이션) (0) | 2024.04.29 |