output_description: Print the number of sequences, modulo 10^9+7.
  
  * * *
input_description: Input is given from Standard Input in the following format:
  
      
      
      N K
attempt: def calc_floors(N):
      # floor(N / n) (n = 1, ..., N) のとりうる値と
      # 各floorの値を与えるnの範囲（閉区間）を返す
      n_values = list()
      n_ranges = list()
      k = 1
      while k <= N:
          # k = floor(N / n)  <-->  N/(k+1) < n <= N/k
          # N/(k+1)より大きい最小の整数は(N + k + 1) // (k + 1)
          left, right = (N + k + 1) // (k + 1), N // k
          n_values.append(k)
          n_ranges.append((left, right))
          if left == 1:
              break
          k = N // (left - 1)
      return n_values, n_ranges
  
  
  def main():
      MOD = 10**9 + 7
      N, K = list(map(int, input().split()))
      n_values, n_ranges = calc_floors(N)
      # dp[k][i]: k個目までで題意を満たす＆一番右の数が区分iの範囲に入るような整数の組の個数
      dp = [[0 for _ in range(len(n_values))] for _ in range(K)]
      dp[0][0] = n_values[0]
      for i in range(1, len(n_values)):
          dp[0][i] = n_values[i] - n_values[i - 1]
      dp[0].reverse()
      for k in range(1, K):
          # dpの累積和（後ろから順に）
          csdp = [0 for _ in range(len(n_values))]
          csdp[len(n_values) - 1] = dp[k - 1][len(n_values) - 1]
          for i in range(len(n_values) - 2, -1, -1):
              csdp[i] = csdp[i + 1] + dp[k - 1][i]
          # dpの更新
          for i in range(len(n_values)):
              v = csdp[len(n_values) - i - 1] * (n_ranges[i][1] - n_ranges[i][0] + 1)
              dp[k][i] = v % MOD
      ans = 0
      for i in range(len(n_values)):
          ans += dp[K - 1][i]
          ans %= MOD
      print(ans)
  
  
  if __name__ == "__main__":
      main()
  
problem_description: Statement
  
  Find the number of sequences of length K consisting of positive integers such
  that the product of any two adjacent elements is at most N, modulo 10^9+7.
samples: [{"input": "3 2", "output": "5\n    \n\n(1,1), (1,2), (1,3), (2,1), and (3,1) satisfy the condition.\n\n* * *"}, {"input": "10 3", "output": "147\n    \n\n* * *"}, {"input": "314159265 35", "output": "457397712"}]