#P1775. Sum of Factorials

Sum of Factorials

描述

约翰·冯·诺伊曼,生于1903年12月28日,卒于1957年2月8日,是一位匈牙利裔美国数学家,他在数学基础、逻辑学、量子物理学、气象学、科学、计算机以及博弈论等领域都做出了重要贡献。他以惊人的记忆力和吸收思想、解决问题的速度而闻名。1925年,他从苏黎世联邦理工学院获得化学工程学士学位,1926年从布达佩斯大学获得数学博士学位。他关于集合论的博士论文是该领域的一项重要成果。20岁时,冯·诺伊曼提出了序数的一个新定义,该定义被普遍采用。在他二十多岁时,他在纯数学和应用数学领域都做出了许多贡献,这使他成为一位有着非凡深度的数学家。他的《量子力学的数学基础》(1932年)为这门新的科学学科构建了坚实的框架。在此期间,他还证明了博弈论中的极小 - 极大定理。他逐渐扩展了自己在博弈论方面的工作,并与合著者奥斯卡·摩根斯特恩一起撰写了《博弈论与经济行为》(1944年)。

存在一些可以用阶乘之和表示的数。例如9,9=1!+2!+3!9 = 1! + 2! + 3! 。冯·诺伊曼博士对这样的数非常感兴趣。所以,他给你一个数nn,并希望你告诉他这个数是否可以用某些阶乘之和来表示。

嗯,这小菜一碟。对于给定的nn,你需要检查是否存在一些xix_i ,使得nn等于1itxi!\sum_{1\leq i\leq t}x_i!t1t\geq1xi0x_i\geq0 ,当且仅当i=ji = j时,xi=xjx_i = x_j )。如果答案是肯定的,输出“YES”;否则,输出“NO”。

输入

你将从输入文件中获取几个非负整数nnn1,000,000n\leq1,000,000)。每个数独占一行。

输入以一个负数所在的行结束。

输出

对于每个nn,你应该在单独的一行中准确输出一个单词(“YES”或“NO”)。不允许有多余的空格。

输入数据1

9
-1

输出数据1

YES

来源

2003年广州亚洲赛