팩토리얼 분해

시간 제한2초메모리 제한128 MB

문제

음이 아닌 정수 N이 주어진다. 서로 다른 음이 아닌 정수 k_1, k_2, ..., k_M (M >= 1)을 골라

N = k_1! + k_2! + ... + k_M!

으로 나타낼 수 있는지 판별하라.

각 정수는 한 번만 사용할 수 있다. 예를 들어 0!1!은 서로 다른 정수의 팩토리얼이므로 둘 다 사용할 수 있다.

입력

첫째 줄에 정수 N이 주어진다.

출력

N을 서로 다른 정수들의 팩토리얼 합으로 나타낼 수 있으면 YES, 그렇지 않으면 NO를 출력한다.

제한

  • 0 <= N <= 1,000,000,000,000,000,000