DHistory
[Baekjoon] Greedy - 2057 팩토리얼 분해 본문
문제
풀이
"""
음이 아닌 정수 N (0, 양의 정수)
서로 다른 정수 (M >= 1)개의 팩토리얼 합으로 나타낼 수 있는지 알아보는 프로그램
-> 0! = 1
"""
import itertools
n = int(input())
def solution(n):
factories = [1]
for i in range(1, 21):
factories.append(factories[i - 1] * i)
for i in range(1, len(factories) + 1):
for value in itertools.combinations(factories, i):
if n == sum(value):
return 'YES'
return 'NO'
print(solution(n))
채점 결과
'Computer Science > Algorithm' 카테고리의 다른 글
[Baekjoon] Greedy - 25496 장신구 명장 임스 (0) | 2023.08.15 |
---|---|
[Baekjoon] Greedy - 25644 최대 상승 (0) | 2023.08.15 |
[Baekjoon] Greedy - 14655 욱제는 도박쟁이야!! (0) | 2023.08.15 |
[Baekjoon] Greedy - 2891 카약과 강풍 (0) | 2023.08.15 |
[Baekjoon] Greedy - 15720 카우버거 (0) | 2023.08.14 |