时间限制: 1Sec 内存限制: 128MB 提交: 36 解决: 33
题目描述
一个正整数如果等于组成它的各位数字的阶乘之和,该整数称为阶乘和数。 例如,145=1!+4!+5!,则145是一个三位阶详细和数。 请问:共有多少个阶乘和数?
输入 无 输出所有的阶乘和数(按字典序,即1打头的在前,2打头的次之,..., 空格分隔)
样例输入 无 样例输出 1 145 2 40585 提示提示:8*9!=8*362880<10000000
来源 #includelong jc(int n);int main(){ int hundred,ten,one,i,n; for(i=100;i<=999;i++) { hundred=i/100; ten=i0/10; one=i0; n=jc(hundred)+jc(ten)+jc(one); if(n==i) printf("%d\n",n); } return 0;}long jc(int n){ int j; long s=1; for(j=1;j<=n;j++) s*=j; return(s);}