Cho dãy số nguyên x1, x2,
…, xN và hàm f(p)
là số lượng các phần tử thuộc dãy x chia hết cho p.
Cho M
truy vấn, mỗi truy vấn cho hai số nguyên li, ri.
Bạn phải trả lời câu hỏi: Tính tổng: 
 , ở đây S(li,
ri) là tập các số nguyên tố thuộc đoạn [li,ri].
INPUT:
·        
Dòng đầu tiên chứa giá trị N
(1 ≤ N ≤ 106)
·        
Dòng hai chứa N
số nguyên x1, x2, …, xN
(2 ≤ xi ≤ 105)
·        
Dòng ba chứa giá trị M
(1 ≤ M ≤ 5*104)
·        
M dòng tiếp theo, mỗi
dòng chứa hai số li, ri
(2 ≤ li ≤ ri ≤ 2*109)
OUTPUT:
·        
Gồm M dòng, mỗi dòng là câu
trả lời của truy vấn tương ứng của INPUT.
Ví dụ:
| 
PRIME.INP | 
PRIME.OUT | 
| 
6 
5 5 7 10 14 15 
3 
2 11 
3 12 
4 4 | 
9 
7 
0 | 
Giải
thích:
·        
Tại truy vấn 1: l
= 2, r = 11: 
Ta cần tính f(2)
+ f(3) + f(5) + f(7) + f(11) = 2 + 1 + 4 + 2 + 0 = 9.
·        
Tại truy vấn 2: l
= 3, r = 12:
Ta cần tính f(3)
+ f(5) + f(7) + f(11) = 1 + 4 + 2 + 0 = 7
·        
Tại truy vấn 3: l
= 4, r = 4: không có số nguyên tố nào thuộc đoạn [l,r],
nên kết quả truy vấn bằng 0
*
Chú ý:
·        
40% test 1
≤ N, M ≤ 100; 1 ≤ li ≤ ri ≤ 1000
·        
40% test tiếp theo 1
≤ N, M ≤ 1000; 1 ≤ li ≤ ri ≤ 1000
·        
20% test còn lại 1 ≤ N ≤ 106, 2 ≤ xi
≤ 105, 1 ≤ M ≤ 5*104, 2 ≤ li ≤ ri
≤ 2*109
 

 
