hnnu 11546 Sum of f(x) (求一个数的全部约数和)

时间:2023-03-08 22:12:59
hnnu 11546 Sum of f(x) (求一个数的全部约数和)

代码:

#include<cstdio>
#include<cstring>
#define N 200000
using namespace std; long long f[N+5];
long long s[N+5]; int main()
{
s[0]=0;
for(int i=1;i<=N;i++)
{
for(int j=1;j*i<=N;j++)
{
f[j*i]+=i;
}
}
for(int i=1;i<=N;i++)
{
s[i]=s[i-1]+f[i];
}
int t;
scanf("%d",&t);
while(t--)
{
int l,r;
scanf("%d%d",&l,&r);
printf("%I64d\n",s[r]-s[l-1]);
}
return 0;
}