Baekjoon/단계별로 풀어보기
[BOJ / 백준] 10872번 팩토리얼 C++ 문제 풀이
s_ih_yun
2020. 11. 20. 06:17
728x90
단계별로 풀어보기 - 재귀 단계 - [1단계] 10872번
문제
문제 링크 : www.acmicpc.net/problem/10872
10872번: 팩토리얼
0보다 크거나 같은 정수 N이 주어진다. 이때, N!을 출력하는 프로그램을 작성하시오.
www.acmicpc.net
입력 복사 :
10
CODE
#include <iostream>
using namespace std;
int facto(int n) {
if (n <= 1)
return 1;
else
return n * facto(n - 1);
}
int main() {
int n;
cin >> n;
cout << facto(n) << '\n';
}
풀이
int facto(int n) {
if (n <= 1)
return 1;
else
return n * facto(n - 1);
}
조건문을 n==1로 할 경우, 입력이 0부터기 때문에 무한루프에 빠져 시간초과가 뜬다.
따라서 조건을 n<=1로 설정하였다.
결과
728x90