[恢]hdu 1128

2011-12-16 12:20:57

地址:http://acm.hdu.edu.cn/showproblem.php?pid=1128

题意:d(n)被定义为n各位数码和+n。输出[1,1000000]内不存在i使得d(i)==n的所有n。

mark:直接搜,开个100w的数组。

代码:

# include <stdio.h>


int dp[1000010] ;


int d(int n)
{
int sum = 0, nn = n ;
while (nn)
{
sum += nn%10 ;
nn /= 10 ;
}
return n + sum ;
}


int main ()
{
int i, n ;
for (i = 1 ;i <= 1000000 ; i++)
{
n = d(i) ;
if (n <= 1000000 && n >= i) dp[n] = 1 ;
if (dp[i] == 0) printf ("%d\n", i) ;
}
return 0 ;
}



posted @ 2012-01-06 17:36  Seraph2012  阅读(131)  评论(0编辑  收藏  举报