Đếm Số Bằng GCD Trên Đoạn
Xem dưới dạng PDF
Gửi bài giải
Điểm:
20
Giới hạn thời gian:
1.0s
Giới hạn bộ nhớ:
256M
đầu vào:
stdin
Đầu ra:
stdout
Tác giả:
Kiểu bài tập
Bình có một dãy số nguyên dương. Với mỗi truy vấn \((l, r)\), Bình muốn đếm xem có bao nhiêu phần tử trong đoạn \([l, r]\) có giá trị bằng GCD của toàn bộ đoạn đó.
Ràng buộc
| Subtask | Điểm | Ràng buộc |
|---|---|---|
| 1 | 30 | Các giá trị nhỏ |
| 2 | 30 | \(N \le 10^5\) |
| 3 | 40 | Không có ràng buộc gì thêm |
Định dạng đầu vào
- Dòng đầu chứa hai số nguyên \(N\) và \(Q\) (\(1 \le N, Q \le 10^5\)).
- Dòng hai chứa \(N\) số nguyên \(a_1, a_2, \dots, a_N\) (\(1 \le a_i \le 10^9\)).
- \(Q\) dòng tiếp theo, mỗi dòng chứa hai số nguyên \(l, r\) (\(1 \le l \le r \le N\)).
Định dạng đầu ra
- Ứng với mỗi truy vấn, in ra số lượng phần tử thỏa mãn.
Ví dụ
Input:
6 3
12 6 18 6 12 3
1 4
2 5
3 6
Output:
2
1
1
Nhận xét