페이지가 로드되지 않나요? 여기를 눌러보면 고쳐질 수도 있어요.
Placeholder

#1757

팩토리얼의 합 1s - MB

문제

임의의 정수 n(n≤1,000,000)을 서로 다른 팩토리얼들의 합으로 나타낼 수 있는지 판단하는 프로그램을 작성하라. 

9의 경우 9=1!+2!+3!로 나타낼 수 있으며, 7의 경우 7=1!+3!로 표현이 가능하다. 하지만 1!+1!와 같이 동일한 팩토리얼이 2개 이상 들어가는 경우는 서로 다른 팩토리얼들의 합이 아니다. 

0!과 1!은 값이 같으나 이는 서로 다른 것으로 취급한다.


입력

한 줄에 한 개의 정수 n이 입력 된다.

-1이 입력으로 들어오면 종료한다.


출력

매 줄에 입력된 n을 팩토리얼의 합으로 나타낼 수 있으면 "YES", 아닐 경우 "NO"를 출력한다.


예제

9 

6
7
-1
YES

NO
YES
로그인해야 코드를 작성할 수 있어요.