hdu 1215 七夕节——数论
大意:题目要求对于每一个n,输出他的所有因子之和
这个题乍一看和poj1845很像,的确可以用poj1845的方法来做,但是这个题的数据规模比poj小很多,我在网上搜了一下,居然这个可以用筛法做,像筛素数那样,把所有i的倍数都加上i……学习啦~~
| 2011-08-25 10:39:27 | Accepted | 1215 | 93MS | 2148K | 319 B | G++ | Tiramitu |
#include<cstdio>
#define MAXN 500000
int array[MAXN+10];
int main(void)
{
int i,j;
array[0]=0;
array[1]=0;
for(i=1;i<=MAXN/2;i++)
for(j=i+i;j<=MAXN;j+=i)
{
array[j]+=i;
}
int T;
scanf("%d",&T);
while(T--)
{
int n;
scanf("%d",&n);
printf("%d\n",array[n]);
}
return 0;
}
浙公网安备 33010602011771号