#include<stdio.h>
int main()
{
int a[500001]={0};
int i,j;
for(i=1;i<=250000;i++)
{
for(j=2;i*j<=500000;j++)
{
a[i*j]+=i;
}
}
while(scanf("%d",&i)!=EOF)
{
while(i--)
{
scanf("%d",&j);
printf("%d\n",a[j]);
}
}
return 0;
}
原来数据量过大时,可以把数据先存入一个数组中,把它编译了,用时直接取就行了
本文介绍了一种通过预先处理大量数据并存储于数组中以提高运行效率的方法。通过对数据进行预处理,可以有效减少计算时间,当需要使用这些数据时可以直接从数组中获取,避免重复计算。
4670

被折叠的 条评论
为什么被折叠?



