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;
}
posted @ 2017-10-10 12:47  _rqy  阅读(185)  评论(0编辑  收藏  举报