Algorithm/알고리즘 문제풀이
백준 10872 파이썬 - 팩토리얼
devraphy
2021. 8. 17. 21:36
1. 문제 링크
https://www.acmicpc.net/problem/10872
10872번: 팩토리얼
0보다 크거나 같은 정수 N이 주어진다. 이때, N!을 출력하는 프로그램을 작성하시오.
www.acmicpc.net
2. 나는 어떻게 생각했는가?
def factorial(n):
result = 1
while n > 0:
result *= n
n -= 1
factorial(n)
return result
n = int(input())
print(factorial(n))
- 내가 작성한 코드는 재귀적이다 라는 느낌이 없다.
- 재귀적이기 보다는 콜백의 느낌이 가까운 것 같다.
3. 정답 코드
def factorial(n):
if n == 0:
return 1
else:
return n * factorial(n - 1)
n = int(input())
print(factorial(n))