본문 바로가기

코딩테스트/Python

[Python] 백준 #10872 팩토리얼

https://www.acmicpc.net/problem/10872

 

10872번: 팩토리얼

0보다 크거나 같은 정수 N이 주어진다. 이때, N!을 출력하는 프로그램을 작성하시오.

www.acmicpc.net

문제


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))

재귀로 푼 방법이다.