链接:http://acm.hdu.edu.cn/showproblem.php?pid=1128
根据题目的描述,把1~1000000之间的数全部运算一次即可。
没有出现过的数即是Self Number;
#include <stdio.h>
#include <string.h>
#define M 1000000
char now[10];
bool generate[M+5];
int tem;
int main()
{
int i;
int j;
for (i=1;i<M;i++)
{
tem=0;
sprintf(now,"%d",i);
for (j=0;j<strlen(now);j++)
tem+=now[j]-'0';
generate[tem+i]=1;
}
for (i=1;i<=M;i++)
if(!generate[i])
printf("%d\n",i);
return 0;
}