对于i属于[1,n],i只能成为[1,n]中n/i个数的约数,易证。
1 #include<stdio.h> 2 int n,i; 3 long long ans; 4 int main() 5 { 6 scanf("%d",&n); 7 for(i=1;i<=n;i++)ans+=(long long)n/i; 8 printf("%lld\n",ans);return 0; 9 }
【数论】bzoj1968 [Ahoi2005]COMMON 约数研究
原文:http://www.cnblogs.com/autsky-jadek/p/3969036.html