对于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 ",ans);return 0; 9 }
对于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 ",ans);return 0; 9 }