bzoj1968[Ahoi2005]COMMON 约数研究

bzoj1968[Ahoi2005]COMMON 约数研究

题意:

定义f(x)=x的约数个数,求sigma(i,1,n)f(i)。n≤1000000

题解:

只要会思路这道题就很水。对于一个数i,它是n/i个数的约数,对答案有n/i的贡献。所以直接从1枚举到n累加n/i就行了。

代码:

1 #include <cstdio>
2 using namespace std;
3 int main(){
4     int n;scanf("%d",&n); int ans=0;
5     for(int i=1;i<=n;i++)ans+=n/i;
6     printf("%d",ans); return 0;
7 }

 

20160617

posted @ 2016-08-17 14:30  YuanZiming  阅读(157)  评论(0编辑  收藏  举报