1968: [Ahoi2005]COMMON 约数研究
Time Limit: 1 Sec Memory Limit: 64 MB
Submit: 1271 Solved: 958
Description
Input
只有一行一个整数 N(0 < N < 1000000)。
Output
只有一行输出,为整数M,即f(1)到f(N)的累加和。
Sample Input
3
Sample Output
5
题解:
这个是真水啊(我会说我开始没看出来吗)。。
从1~n枚举每一个数,用它来整除n得到n个数中约数有它的个数,直接加进来就好了。
Code:
#include<iostream>
#include<cstdio>
#include<cstdlib>
#include<cmath>
#include<cstring>
#include<algorithm>
using namespace std;
int main(){
int n,ans=0; scanf("%d",&n);
for (int i=1; i<=n; i++)
ans+=(n/i);
printf("%d\n",ans);
return 0;
}