1968: [Ahoi2005]COMMON 约数研究 Time Limit: 1 Sec  Memory Limit: 64 MBSubmit: 2032  Solved: 1537[Submit][Status][Discuss] Description Input 只有一行一个整数 N(0 < N < 1000000). Output 只有一行输出,为整数M,即f(1)到f(N)的累加和. Sample Input 3 Sample Output 5 HINT   Source Day2…
1968: [Ahoi2005]COMMON 约数研究 Time Limit: 20 Sec Memory Limit: 256 MB 题目连接 http://www.lydsy.com/JudgeOnline/problem.php?id=1968 Description Input 只有一行一个整数 N(0 < N < 1000000). Output 只有一行输出,为整数M,即f(1)到f(N)的累加和 Sample Input 3 Sample Output 5 HINT 题意 题解:…
1968: [Ahoi2005]COMMON 约数研究 Time Limit: 1 Sec  Memory Limit: 64 MB Submit: 2351  Solved: 1797 [Submit][Status][Discuss] Description Input 只有一行一个整数 N(0 < N < 1000000). Output 只有一行输出,为整数M,即f(1)到f(N)的累加和. Sample Input     3 Sample Output     5 HINT   S…
题目链接:http://www.lydsy.com/JudgeOnline/problem.php?id=1968 题意: 设f(x) = x约数的个数.如:12的约数有1,2,3,4,6,12,所以f(12) = 6. 给定n,问你f(1)到f(n)之和. 题解: 好多做法... (1)O(N*sqrt(N)) 纯暴力(应该过不了). 枚举i,sqrt(i)复杂度求出约数个数,更新ans. 不附代码. (2)O(N*log(N)) 若当前枚举到i,则i为i*k的一个约数(k >= 0),dp[…
枚举约数,加上有这个约数的数个数 #include<iostream> #include<cstdio> using namespace std; const int N=1000005; int n; long long ans; int main() { scanf("%d",&n); for(int i=1;i<=n;i++) ans+=n/i; printf("%lld\n",ans); return 0; }…
#include<cstdio> #include<iostream> #define M 1000008 using namespace std; long long tot,f[M],sum[M],ans,n,b[M],p[M]; int main() { scanf("%d",&n); ans=; ;i<=n;i++) { if(!b[i]) { tot++; p[tot]=i; sum[i]=; f[i]=; } ;j<=tot;j+…
题目链接:http://www.lydsy.com/JudgeOnline/problem.php?id=1968 直接计算每个因子的贡献就可以了. $Ans=\sum_{i=1}^n[\frac{n}{i}]$ #include<cstdio> #include<cstring> #include<algorithm> using namespace std; typedef long long ll; int main(){ int N; scanf("%…
http://www.lydsy.com/JudgeOnline/problem.php?id=1968 换个角度 一个数可以成为几个数的约数 #include<cstdio> #include<iostream> using namespace std; int main() { int n; ; scanf("%d",&n); ;i<=n;++i) ans+=n/i; cout<<ans; } 1968: [Ahoi2005]COM…
1968: [Ahoi2005]COMMON 约数研究 Time Limit: 1 Sec  Memory Limit: 64 MB Submit: 2939  Solved: 2169 [Submit][Status][Discuss] Description Input 只有一行一个整数 N(0 < N < 1000000). Output 只有一行输出,为整数M,即f(1)到f(N)的累加和. Sample Input 3 Sample Output 5 题解 我们知道一个数x的约数个数…
Description Input 只有一行一个整数 N(0 < N < 1000000). Output 只有一行输出,为整数M,即f(1)到f(N)的累加和. Sample Input 3 Sample Output 5 HINT Source Day2   正解:数学 解题报告: 讨论每个因子的贡献就可以了.   //It is made by jump~ #include <iostream> #include <cstdlib> #include <cs…