728x90
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
예제 입력 2 복사
0
예제 출력 2 복사
1
#소스코드
def factorial(n):
if n <= 1:
return 1
return n * factorial(n-1)
n = int(input())
print(factorial(n))
#풀이
0!과 1!은 값이 1이기 때문에 if문으로 따로 정의해주었다.
그리고나서부터는
2! = 2 x 1!
3! = 3 x 2!
4! = 4 x 3!
.
.
.
n! = n x (n-1)! 이렇게 반복하는 구조이기 때문에 return 에 저러한 값을 주었다.
728x90
'[python] > 알고리즘 공부' 카테고리의 다른 글
프로그래머스 피자 나눠먹기(1) [JS] (0) | 2023.03.30 |
---|---|
백준 10870 피보나치 수 5 [python] (0) | 2022.09.29 |
백준 1157 단어공부 [python] (0) | 2022.09.14 |
백준 문자열 반복 2675번 [python] (0) | 2022.07.13 |
백준 100809 알파벳 찾기 [python] (0) | 2022.07.02 |