ezhoon

[인프런] 07-04 팩토리얼 본문

[Java] 인프런 문제풀이/Recursive, Tree, Graph(DFS, BFS 기초)

[인프런] 07-04 팩토리얼

ezhoon 2022. 2. 11. 20:10

📖  문제


  • 첫 번째 줄에 N팩토리얼 값을 출력
    • 첫 번째 줄에 자연수 N이 주어진다.

⚠️  주의사항


  • DFS를 이용한 문제풀이

 

✍️  이해


/**
 * 1. N 입력
 * 2. N이 1로 입력된 경우는 return 1
 * 3. 1이 아닌경우 return N * DFS(N-1);
 *  3-1 N이 5라고 가정
 *  3-2. 5 * D(4)
 *  3-3. 5 * 4 * D(3)
 *  3-4. 5 * 4 * 3 * D(2)
 *  3-5. 5 * 4 * 3 * 2 * D(1)
 *  3-6. 5 * 4 * 3 * 2 * 1
 */

✏️  풀이


import java.util.Scanner;

public class Main {

    public int DFS(int N) {
        if (N == 1) return 1;
        else return N * DFS(N - 1);
    }

    public static void main(String[] args) {
        Main T = new Main();

        Scanner sc = new Scanner(System.in);
        int N = sc.nextInt();

        System.out.println(T.DFS(N));
    }
}

 

Comments