问题描述
我们用D(i)表示i有多少个约数。
例如 D(1)=1 D(2)=2 D(3)=2 D(4)=3。
给定n, 求D(1)+D(2)+D(3)+...+D(n)除以1000000007(10^9+7)的余数。
输入格式
一个正整数n
输出格式
一行一个整数表示答案。
样例输入
4
样例输出
8
数据规模和约定
N<=10000000
#include<iostream>
using namespace std;
const int mod = 1e9+7;
int main(){
long long n;
long long ans;
cin>>n;
for(int i = 1; i <= n; i++) ans += n/i;
cout<<ans-1<<"\n";
return 0;
}