P1403 [AHOI2005]约数研究 题解
转载luogu某位神犇的题解QAQ
这题重点在于一个公式:
f(i)=n/i
至于公式是怎么推出来的,看我解释:
1-n的因子个数,可以看成共含有2因子的数的个数+含有3因子的数的个数……+含有n因子的数的个数
但在1~n中含有“2”这个因子的数有n/2个,3有n/3个,以此类推,公式就出来了
代码:
1 #include<iostream> 2 using namespace std; 3 int n,ans; 4 int main() 5 { 6 cin>>n; 7 for(int i=1;i<=n;i++)ans+=n/i; 8 cout<<ans; 9 }