#include <bits/stdc++.h> using namespace std; #define endl '\n' #define int long long typedef long long ll; const int N = 1e6 + 10; const int mod = 1e9 + 7; int dp[2010][2010]; //长度为i,最后一位为j的个数 // dp[i][j] = dp[i-1][j] + dp[i-1][k] (j mod k == 0) void solve() { int n,k; cin>>n>>k; for (int i = 1; i <= n; ++i) { dp[1][i] = 1; } for (int i = 1; i <= k; ++i) { for (int j = 1; j <= n; ++j) { for (int l = j; l <= n; l += j) { //更新最后一位为j的倍数的dp值 dp[i][l] = (dp[i][l] + dp[i-1][j]) % mod; } } } int ans = 0; for (int i = 1; i <= n; ++i) { ans += dp[k][i]; ans %= mod; } cout<<ans<<endl; } signed main() { int t = 1; //cin >> t; while (t--) { solve(); } return 0; }