题目地址:点击打开链接
思路:挺好的一题,刚开始以为很难,没写出来,没想到从1开始做个循环就可以了
AC代码:
#include<stdio.h>
#include<string.h>
bool a[1000005];
int main()
{
int i,k,sum;
memset(a,true,sizeof(a));
for(i=1; i<1000000; i++)
{
sum = 0;
k = i;//注意把i赋给k不然会陷入死循环
while(k)
{
sum += k % 10;
k /= 10;
}
a[i+sum] = false;
}
for(i=1; i<=1000000; i++)
{
if(a[i])
printf("%d\n",i);
}
return 0;
}