#896. BCNN - Bội số chung nhỏ nhất

Bộ nhớ: 256 MiB Thời gian: 1000 ms Nhập/xuất từ luồng chuẩn
Kiểu bài: Thông thường Kiểu chấm: So sánh văn bản
Đưa lên bởi: Trùm CUỐI

Đề bài

Bội số chung nhỏ nhất (hay còn gọi tắt là bội chung nhỏ nhất, viết tắt là BCNN) của hai số nguyên dương 𝑥 𝑦 là số nguyên dương nhỏ nhất chia hết cho cả 𝑥 𝑦 .

Yêu cầu: Cho hai số nguyên dương 𝑎, 𝑏\ (𝑎 ≤ 𝑏) , hãy đếm tất cả các cặp số nguyên dương 𝑥, 𝑦 sao cho 𝐵𝐶𝑁𝑁(𝑥, 𝑦)=𝑎×(𝑎+1)×…×𝑏 .

Dữ liệu vào:

  • Dòng đầu tiên chứa số nguyên dương 𝑇 là số bộ dữ liệu (𝑇 ≤ 10) ;
  • 𝑇 dòng sau, mỗi dòng chứa hai số nguyên dương 𝑎, 𝑏 ;

Dữ liệu ra:

  • Ghi ra 𝑇 dòng, mỗi dòng ghi một số nguyên là kết quả của bộ dữ liệu tương ứng. Vì kết quả có thể rất lớn, hãy đưa ra giá trị là phần dư khi lấy kết quả chia cho 10^9 + 7 .

Ví dụ:

Dữ liệu vào:

2
2 3
5 5

Dữ liệu ra:

9
3

Giới hạn:

  • Subtask \#1: 30\% số test có 𝑎 ≤ 𝑏 ≤ 10 ;
  • Subtask \#2: 30\% số test có 𝑎 ≤ 𝑏 ≤ 100 ;
  • Subtask \#3: 40\% số test có 𝑎 ≤ 𝑏 ≤ 10^6 .