题目如下:

std在这里


已经研究了一上午啦,求放过
我的代码(不知道错哪了?)
?只有10分。。
#include<bits/stdc++.h>
using namespace std;
const int MOD=1e9+7;
int n,m;
long long dp[100010][20];
long long sum[100010][20];
signed main(){
cin>>n>>m;
for(int i=1;i<=m;i++) dp[1][i]=1,sum[1][i]=sum[1][i-1]+1;
for(int i=2;i<=n;i++){
for(int j=1;j<=m;j++){
dp[i][j]=(0ll+dp[i][j]+sum[i-1][m])%MOD;
for(int k=2*j;k<=m;k+=j){
dp[i][j]=(0ll+dp[i][j]-dp[i-1][k]+MOD)%MOD;
}
sum[i][j]=(0ll+sum[i][j-1]+dp[i][j])%MOD;
}
}
cout<<sum[n][m]%MOD;
return 0;
}