알고리즘 연습/재귀

[🥉5 / 백준 27433 / 파이썬] 팩토리얼 2

김세진 2023. 6. 26. 00:47
반응형

 

 

 

 

27433번: 팩토리얼 2

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

www.acmicpc.net

 

 

문제

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

 

입력

첫째 줄에 정수 N(0 ≤ N ≤ 20)이 주어진다.

 

출력

첫째 줄에 N!을 출력한다.

 

예제 입력 1

10

예제 출력 1

3628800

예제 입력 2

0

예제 출력 2

1

 

풀이

 

팩토리얼을 계산하는 데에 더 효율적인 방법이 많지만, 재귀 연습 문제인 만큼 재귀로 해결해보도록 하자.

0 팩토리얼은 1임에 주의하자.

 

def fac(num, n):
    if n == 0:
        print(num)
        return

    fac(num*n, n-1)

n = int(input())
fac(1, n)

 

 

 

반응형