Điểm: 1200 (p) Thời gian: 1.0s Bộ nhớ: 256M Input: bàn phím Output: màn hình

Cho số \(N\) và dãy \(A\) (\(A1, A2,...AN\)). Để tránh việc phải đọc một lượng dữ liệu quá lớn, dãy \(A\) sẽ được cho bởi ba số nguyên dương \(P, Q, M\). Trong đó mỗi phần tử \(A[i]\) được xác định theo công thức:
\(A[i] = (P*i)\) % \(M + Q\) ,(\(1 \le i \le N\))
\(T\) câu hỏi dạng \(U, V\) (\(U \le V\)) yêu cầu cho biết trong đoạn \(A[U], A[U+1],...A[V]\) có bao nhiêu số nguyên tố

Thông số đầu vào

Dòng 1: Chứa hai số nguyên dương \(N, T\) (\(N \le 10^6, T \le 10^6\))
Dòng 2: Dòng 2 chứa ba số nguyên dương \(P, Q, M\) xác định dãy A (\(P, Q, M \le 10^6\))
\(T\) dòng tiếp theo, dòng thứ \(i\) chứa 2 số \(U, V\) (\(U, V \le N\))

Thông số đầu ra

Ghi trên T dòng, mỗi dòng ghi câu trả lời cho từng câu hỏi

Ví dụ đầu vào

5 4
2 1 9
1 3 
2 4 
3 5 
4 4

Ví dụ đầu ra

3
2
2
0

Giải thích

Dãy \(A\) = (3,5,7,9,2).
Đoạn [1,3] là (3,5,7) có 3 số nguyên tố
Đoạn [2,4] là (5,7,9) có 2 số nguyên tố
Đoạn [3,5] là (7,9,2) có 2 số nguyên tố
Đoạn [4,4] là (9) có 0 số nguyên tố

Ràng buộc

20% số test có \(N \le 100, T \le 100\)
20% số test có \(N \le 1\,000, T \le 1\,000\)
20% số test có \(N \le 10\,000, T \le 10\,000\)
20% số test có \(N \le 100\,000, T \le 100\,000\)
20% số test còn lại không ràng buộc gì thêm


Bình luận


  • -2
    Quang    9:19 a.m. 1 Tháng 1, 2025

    Sorry những ai đang làm bài này nha
    Em làm nhầm test nhưng em sửa rồi đó
    Làm bài vui vẻ:)

    Háp pi niu dia 🙂