打表
sum[i]存储i的各因子之和。
筛选法
void makeTable(int n){
memset(sum,0,sizeof(sum));
sum[1] = 0;
int i = 2,j;
while(i <= n){
sum[i]++;
j = i + i;
while(j <= n){
sum[j] += i;
j += i;
}
i++;
}
}
打表
sum[i]存储i的各因子之和。
筛选法
void makeTable(int n){
memset(sum,0,sizeof(sum));
sum[1] = 0;
int i = 2,j;
while(i <= n){
sum[i]++;
j = i + i;
while(j <= n){
sum[j] += i;
j += i;
}
i++;
}
}