
풀이
재귀 함수를 사용하여 푼다.

이때 조심해야 할 사항이 있다.
1. factorial(1)일 때 종료할 수 있도록 조건문을 걸어둔다.
2. 문제에서 보면 0일때 return 1을 하도록 한다고 되어있다.
따라서 코드를 짜면 이렇게 된다.
코드
n = int(input())
def factorial(n):
if n == 0:
return 1
if n == 1:
return 1
return n*factorial(n-1)
print(factorial(n))
def factorial(n):
if n == 0:
return 1
if n == 1:
return 1
return n*factorial(n-1)
print(factorial(n))
결과

'IT 공부 > 코딩테스트' 카테고리의 다른 글
[백준 10178번] 할로윈의 사탕 - 파이썬 (0) | 2023.07.30 |
---|---|
[백준 5522번] 카드 게임 - 파이썬 (0) | 2023.07.30 |
[백준 2010번] 플러그 - 시간초과(파이썬) (0) | 2023.07.29 |
[백준 2446번] 별 찍기 - 9 파이썬 (출력 형식이 잘못되었습니다.) (0) | 2023.07.29 |
[백준 2445번] 별 찍기 - 8 - 파이썬 (0) | 2023.07.29 |