当前位置: 代码迷 >> C语言 >> 正整数的另类分解
  详细解决方案

正整数的另类分解

热度:409   发布时间:2008-01-03 12:46:20.0
正整数的另类分解
题目名称:
正整数的另类分解
内容:数论中有很多有趣的现象。比如完全树,(一个数的所有小于它的因子之和等于他自己,如6=1+2+3)。现在考虑另一种数,它能表示为若干不相等的小于它的整数之阶乘之和,如9=1!+2!+3!,10=0!+1!+2!+3!)等
要求,给定正整数,验证是否有若干,
输入说明:输入文件中包含若干非负整数,每个单独占一行。当遇到负数时输入终止。
输出说明:对每个来说,必须在单独的一行上输出yes或者no。不能有多余的空格。
输入样例:
9
-1
输出样例
Yes
搜索更多相关的解决方案: 整数  分解  另类  

----------------解决方案--------------------------------------------------------
贪心。对于一个正整数n, n存在上述分解 当且仅当 n-k! 存在上述分解 (k为使得k!<=n的最大k)
正确性由下面的命题保证:
0!+1!+2!+...+(n-1)!<=n!
这个命题本身的正确性也比较好证明我就不证了。
----------------解决方案--------------------------------------------------------
回复 2# 的帖子
我看不懂啊!
我知道你是在指导我,可我着急要代码,以后漫漫交流吧!
给我代码行吗?
谢谢啦!!!
听同学说你是个编程高手,想和你做个朋友,以后多向你学习,可以吗?!
----------------解决方案--------------------------------------------------------
又一个不要算法只要代码的人,
如果你只要代码来应付的话,麻烦你花钱买,我可以给你写
如果你要算法来学习的话,免费
----------------解决方案--------------------------------------------------------

----------------解决方案--------------------------------------------------------
喔,是这样.
----------------解决方案--------------------------------------------------------

----------------解决方案--------------------------------------------------------
0!+1!+2!+...+(n-1)!<=(n-1)!+(n-1)!+(n-1)! ....+(n-1)!
----------------解决方案--------------------------------------------------------
  相关解决方案