Điều hướng chính

Ngôn ngữ

Phím tắt

/
Chuyển đến ô tìm bài
g p
Đi đến bài tập
g c
Đi đến kỳ thi
g u
Đi đến người dùng
?
Mở trợ giúp phím tắt

Đếm dãy chia hết

Dễ Quy hoạch động Số học

  • 100 Điểm
  • 100% Tỉ lệ AC
  • 1 Số AC
  • 500M Bộ nhớ giới hạn
  • 1.0s Giới hạn thời gian

Ta gọi một dãy số nguyên dương \(b_1, b_2, \dots, b_k\) là dãy chia hết nếu \(b_k \le n\) và mỗi phần tử là ước của phần tử đứng ngay sau nó, tức là \(b_i \mid b_{i+1}\) với mọi \(1 \le i < k\). (Do ước không vượt quá bội nên dãy này cũng thoả \(b_1 \le b_2 \le \dots \le b_k \le n\); các phần tử có thể bằng nhau.)

Cho hai số nguyên \(n\) và \(k\). Hãy đếm số dãy chia hết có độ dài đúng \(k\). Vì kết quả có thể rất lớn, in ra phần dư khi chia cho \(10^9 + 7\).

Input

Một dòng chứa hai số nguyên \(n\) và \(k\).

Output

In ra một số nguyên là số dãy chia hết độ dài \(k\), lấy modulo \(10^9 + 7\).

Constraints

  • \(1 \le n, k \le 2000\)

Sample Input

6 3

Sample Output

25

Explanation

Với \(n = 6\), \(k = 3\) có \(25\) dãy thoả mãn, chẳng hạn \((1,1,1)\), \((1,2,6)\), \((2,4,4)\), \((3,3,6)\), \((6,6,6)\), ...

Bình luận

Chưa có bình luận nào.