poj1316(非打表)
http://blog.csdn.net/luxuejuncarl/archive/2007/05/03/1595192.aspx
(借鉴)~**~
View Code
函数的调用会花掉很多时间。
定义一个数组,充分利用数组的下标和值。如int a[1000],把下标和值都利用上。
#include<iostream>
using namespace std;
#define MAX 10003
int main()
{
int i, b, sum, a[MAX]={0};
for(i=1; i<MAX; i++)
{
b = sum = i;
while(b)
{
sum += b % 10;
b /= 10;
}
if(sum < MAX)
a[sum] = 1;
}
for(i=1; i<MAX; i++)
if(a[i] == 0)
printf("%d\n", i);
return 0;
}
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步