Cho một mảng n số nguyên đã được sắp xếp không giảm. Có q truy vấn, mỗi truy vấn gồm hai số L và R. Với mỗi truy vấn, hãy đếm xem có bao nhiêu phần tử của mảng nằm trong đoạn [L,R] (tính cả hai đầu mút).
Vì mảng đã được sắp xếp, hãy dùng tìm kiếm nhị phân (lower bound / upper bound) để trả lời mỗi truy vấn nhanh chóng thay vì duyệt toàn bộ mảng.
Dòng đầu chứa hai số nguyên n và q. Dòng thứ hai chứa n số nguyên không giảm. Mỗi dòng trong q dòng tiếp theo chứa hai số nguyên L và R.
1≤n,q≤105; −109≤ai≤109; −109≤L≤R≤109.
Với mỗi truy vấn, in ra trên một dòng số phần tử nằm trong [L,R].
Ví dụ:
Đầu vào:
6 3
1 2 2 5 8 10
2 5
0 1
6 9
Đầu ra:
3
1
1
Giải thích:
Đang tải editor...