
문제를 살펴보면 N!을 출력하는 간단한 문제이다
for 반복문을 통해서 n부터 -1씩 더하며 1이 될때까지 모든 값을 곱하는 방법도 있고
재귀함수를 통해서 만드는 방법도 존재한다
필자는 코드상 더 깔끔한 재귀함수를 통해서 코드를 작성하였다
만약 함수에 들어온 인자가 1보다 크다면 그 수를 곱한 값과 팩토리얼 함수를 호출하며 return하고
1보다 작다면 1을 반환하도록 작성하면 된다
def factorial(num):
if num > 1:
return num * factorial(num - 1)
else:
return 1
n = int(input())
print(factorial(n))'Baekjoon' 카테고리의 다른 글
| [Baekjoon]백준 1010 다리놓기(실버 5) - Python (0) | 2024.12.06 |
|---|---|
| [Baekjoon]백준 11050 이항 계수 1(브론즈 1) - Python (0) | 2024.12.05 |
| [Baekjoon]백준 24511 queuestack(실버 3) - Python (0) | 2024.12.03 |
| [Baekjoon]백준 2346 풍선 터뜨리기(실버 3) - Python (0) | 2024.12.02 |
| [Baekjoon]백준 28279 덱 2(실버 4) - Python (0) | 2024.12.01 |