Toggle navigation
HUSTOJ
常见问答
讨论版
问题
来源/分类
状态
排名
竞赛&作业
Login
问题1446--Self-Numbers
1446: Self-Numbers
时间限制:
1
Sec
内存限制:
128 MB
提交:
2
解决:
2
[
提交
] [
状态
] [
讨论版
] [命题人:
]
题目描述
在1949年印度数学家D. R. Daprekar发现了一类称作Self-Numbers的数。对于每一个正整数n,我们定义d(n)为n加上它每一位数字的和。例如,d(75)=75+7+5=87。给定任意正整数n作为一个起点,都能构造出一个无限递增的序列:n, d(n), d(d(n)), d(d(d(n))), . . . 例如,如果你从33开始,下一个数是33+3+3=39,再下一个为39+3+9=51,再再下一个为51+5+1=57,因此你所产生的序列就像这样:33, 39, 51, 57, 69, 84, 96, 111, 114, 120, 123, 129, 141, . . . 数字n被称作d(n)的发生器。在上面的这个序列中,33是39的发生器,39是51的发生器,51是57的发生器等等。有一些数有超过一个发生器,如101的发生器可以是91和100。一个没有发生器的数被称作Self-Number。如前13个Self-Number为1, 3, 5, 7, 9, 20, 31, 42, 53, 64, 75, 86, 97。我们将第i个Self-Number表示为a[i],所以a[1]=1, a[2]=3, a[3]=5.
输入
输入N(N<10000)
输出
输出1到N中所有的self-numbers ,以一个空格隔开
样例输入
Copy
100
样例输出
Copy
1 3 5 7 9 20 31 42 53 64 75 86 97
来源/分类
30初级算法-枚举