https://www.acmicpc.net/problem/10872
문제
0보다 크거나 같은 정수 N이 주어진다. 이때, N!을 출력하는 프로그램을 작성하시오.
입력
첫째 줄에 정수 N(0 ≤ N ≤ 12)이 주어진다.
출력
첫째 줄에 N!을 출력한다.
예제 입력 1
10
예제 출력 1
3628800
풀이 1 (반복문)
n = int(input())
sum=1
for i in range(1,n+1):
sum*=i
print(sum)
1부터 n까지 곱해주었다.
풀이 2 (재귀)
def f(n):
if n<=1:
return 1
return n*f(n-1)
n = int(input())
print(f(n))
재귀로 푼 방법이다.
'코딩테스트 > Python' 카테고리의 다른 글
[Python] 백준 #2447 - 별 찍기 - 10 (0) | 2021.11.22 |
---|---|
[Python] 백준 #10870 피보나치 수 5 (0) | 2021.11.21 |
[Python] 백준 #2178 - 미로 탐색 (0) | 2021.11.20 |
[Python] 백준 #1743 - 음식물 피하기 (0) | 2021.11.20 |
[Python] 백준 #2606 - 바이러스 (0) | 2021.11.20 |