#SGM0000066. Truy vấn khoảng giá trị (Range Interval Queries)

Truy vấn khoảng giá trị (Range Interval Queries)

Truy vấn khoảng giá trị (Range Interval Queries)

Nguồn: CSES

Phiên bản: Phước Hưng OJ Extended

Đề bài

Cho dãy x1,x2,…,xnx_1,x_2,\ldots,x_n. Mỗi truy vấn cho bốn số a,b,c,da,b,c,d. Hãy đếm số chỉ số ii thỏa đồng thời a≤i≤ba\le i\le b và c≤xi≤dc\le x_i\le d.

Dữ liệu vào

Dòng đầu chứa n,qn,q. Dòng thứ hai chứa nn số xix_i. Mỗi trong qq dòng sau chứa a,b,c,da,b,c,d.

Kết quả

In kết quả của từng truy vấn trên một dòng.

Subtask

Subtask 1 (20%)

  • n≤30n\le 30, số truy vấn ≤30\le 30.
  • Các điều kiện còn lại như Subtask 3.

Subtask 2 (30%)

  • n≤3000n\le 3000, số truy vấn ≤3000\le 3000.
  • Các điều kiện còn lại như Subtask 3.

Subtask 3 (50%)

  • 1≤n,q≤2⋅1051\le n,q\le 2\cdot10^5
  • 1≤xi≤1091\le x_i\le10^9
  • 1≤a≤b≤n1\le a\le b\le n
  • 1≤c≤d≤1091\le c\le d\le10^9

Ví dụ

Input

8 4
3 2 4 5 1 1 5 3
2 4 2 4
5 6 2 9
1 8 1 5
3 3 4 4

Output

2
0
8
1

Giải thích

Truy vấn đầu xét các vị trí 2..42..4, nhận được [2,4,5]. Chỉ 2 và 4 nằm trong khoảng giá trị [2,4][2,4], nên đáp án là 22.