반응형
팩토리얼 성공
시간제한 메모리 제한 제출 정답 맞은 사람 정답 비율
1 초 | 256 MB | 80434 | 39653 | 33290 | 49.840% |
문제
0보다 크거나 같은 정수 N이 주어진다. 이때, N! 을 출력하는 프로그램을 작성하시오.
입력
첫째 줄에 정수 N(0 ≤ N ≤ 12)이 주어진다.
출력
첫째 줄에 N!을 출력한다.
예제 입력 1
10
예제 출력 1
3628800
BufferedReader로 입력값을 받는다
int형 타입 N 변수에 입력값을 담고
int형 타입 sum 변수에 누적 값을 담는다 이때, factorial(N) 메서드를 실행시켜서 누적한다
factorial 메서드는 숫자 a를 매개변수로 받고
If조건문으로 a가 1이하 일 때는 1을 리턴하고
다른 것은 재귀로 계속해서 리턴해준다
6 * factorial(5){
5 * factorial(4){
4 * factorial(3){
3 * factorial(2){
2 * factorial(1){
return 1;
}
return 2 * 1;
}
return 3 * 2 * 1;
}
return 4 * 3 * 2 * 1;
}
return 5 * 4 * 3 * 2 * 1;
}
return 6 * 5 * 4 * 3 * 2 * 1;
이런 식으로 재귀 함수가 진행된다
반응형
'TIL > Algorithm' 카테고리의 다른 글
Java 백준 2231번 문제 - 분해합 (0) | 2021.11.16 |
---|---|
Java 백준 10870번 문제 - 피보나치 수열 (0) | 2021.10.30 |
Java 백준 3053번 문제 - 택시 기하학 (0) | 2021.10.28 |
Java 백준 4153번 문제 - 직각삼각형 (0) | 2021.10.27 |
Java 백준 3009번 문제 - 네번째 점 (0) | 2021.10.26 |