[BOJ] 2057번 : 팩토리얼 분해 (Python/파이썬)
·
공부/백준
문제 2057번: 팩토리얼 분해 음 아닌 정수 N이 주어졌을 때, 이 수를 서로 다른 정수 M(M ≥ 1)개의 팩토리얼의 합으로 나타낼 수 있는지 알아내는 프로그램을 작성하시오. 예를 들어 2=0!+1!로 나타낼 수 있지만, 5는 이와 같은 www.acmicpc.net 문제풀이 문제는 입력된 N을 서로다른 M개의 팩토리얼의 합으로 나타낼 수 있는지 구하는 문제이다. 예를들어 N = 7 이라면 3! + 1! 으로 나타낼 수 있고, N = 9 라면 3! + 2! + 1! 으로 나타낼 수 있다. 문제를 2단계로 나누어 풀어보도록 한다. STEP 1. 팩토리얼을 구하는 사용자 정의 함수 코드 def factorial(n): if n == 0: return 1 else: return n * factorial(n ..