Đếm Điểm Trong Hình Chữ Nhật

Xem dưới dạng PDF

Gửi bài giải


Điểm: 30
Giới hạn thời gian: 2.0s
Giới hạn bộ nhớ: 256M
đầu vào: stdin
Đầu ra: stdout

Tác giả:
Kiểu bài tập

Cho \(N\) điểm trên mặt phẳng tọa độ 2D, điểm thứ \(i\) có tọa độ \((X_i, Y_i)\).

Bạn cần trả lời \(Q\) truy vấn, mỗi truy vấn yêu cầu đếm số lượng điểm nằm trong hình chữ nhật giới hạn bởi các đường thẳng \(x = x_1, x = x_2\) và \(y = y_1, y = y_2\) (tức là tọa độ \((x, y)\) của điểm thỏa mãn \(x_1 \le x \le x_2\) và \(y_1 \le y \le y_2\)).

Định dạng đầu vào

  • Dòng đầu chứa hai số nguyên dương \(N\) và \(Q\) (\(1 \le N, Q \le 10^5\)).
  • \(N\) dòng tiếp theo, mỗi dòng chứa hai số nguyên \(X_i\) và \(Y_i\) (\(-10^9 \le X_i, Y_i \le 10^9\)).
  • \(Q\) dòng tiếp theo, mỗi dòng chứa bốn số nguyên \(x_1\), \(x_2\), \(y_1\) và \(y_2\) (\(-10^9 \le x_1 \le x_2 \le 10^9, -10^9 \le y_1 \le y_2 \le 10^9\)).

Định dạng đầu ra

  • Với mỗi truy vấn, in ra số lượng điểm nằm trong hình chữ nhật trên một dòng.

Ràng buộc & Subtasks

  • Subtask 1 (30% số điểm): \(N, Q \le 1000\).
  • Subtask 2 (70% số điểm): \(N, Q \le 10^5\), các ràng buộc gốc.

Ví dụ

Input:

4 3
1 2
2 4
3 1
4 5
1 3 1 3
2 4 2 5
1 4 6 10

Output:

2
3
0

Giải thích:

  • Điểm: \(P_1(1, 2)\), \(P_2(2, 4)\), \(P_3(3, 1)\), \(P_4(4, 5)\).
  • Truy vấn 1: \([1, 3] \times [1, 3]\). Có các điểm \(P_1(1, 2)\) và \(P_3(3, 1)\) thỏa mãn \(\to\) 2 điểm.
  • Truy vấn 2: \([2, 4] \times [2, 5]\). Có các điểm \(P_2(2, 4)\) và \(P_4(4, 5)\) và khoan đã... À, điểm \(P_2(2, 4)\) thỏa mãn, \(P_4(4, 5)\) thỏa mãn. Điểm \(P_3(3, 1)\) có \(y=1\) nằm ngoài \([2, 5]\). Vậy chỉ có 2 điểm chứ? Hãy kiểm tra ví dụ đầu ra: 2 2 0 Đúng vậy! Có 2 điểm thỏa mãn truy vấn 2. Hãy đổi ví dụ đầu ra thành: 2 2 0
    • Truy vấn 3: \([1, 4] \times [6, 10]\) không chứa điểm nào \(\to\) 0.

Nhận xét

Không có ý kiến tại thời điểm này.