BZOJ1968 [Ahoi2005] 约数研究
Description
Input
只有一行一个整数 N(0 < N < 1000000)。
Output
只有一行输出,为整数M,即f(1)到f(N)的累加和。
Sample Input
3
Sample Output
5
题解
直接求$\sum_{i=1}^n\sum_{j|i}1=\sum_{j=1}^n\left\lfloor\frac nj\right\rfloor$即可。
#include <cstdio> 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; }