본문 바로가기

Problem Solving/Baekjoon Online Judge

<재귀> 10872번 팩토리얼 with 파이썬

 

문제

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

입력

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

출력

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

정답비율

47.435%

 

def fac(x) :
    if x == 0 :
        return 1
    else :
        return x * fac(x-1)
N = int(input())
print(fac(N))

  팩토리얼은 기본적인 재귀함수의 구현이므로 쉽게 작성할 수 있었다. 다만 문제에서 0을 포함시켰으므로 0부터 시작하도록 코드를 짰다. 좀 더 궁금하다면 아래에 참고목록에서 필자의 다른 글을 살펴보길 바란다.

 

 

 


 

 

 

참고

 

 

10872번: 팩토리얼

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

www.acmicpc.net

 

 

<알고리즘> 07. 재귀 알고리즘 (1)

1. 재귀 알고리즘의 기본 * 재귀란  - 재귀 : 어떤 사건에서 자기 자신을 포함하고 다시 자신을 사용하여 정의되는 것. * 팩토리얼 구현  - n! 정의 ① 0! = 1 ② n > 0 이면 n! = n x (n-1)!  이 경우 n이 0.

haesoo9410.tistory.com