#5235. Quy hoạch đô thị (Mã bài: CITYPLAN)

Bộ nhớ: 256 MiB Thời gian: 1000 ms Nhập/xuất từ luồng chuẩn
Kiểu bài: Thông thường Kiểu chấm: So sánh văn bản
Đưa lên bởi: Trùm CUỐI

Đề bài

Ban quản lý quy hoạch thành phố X đang lên kế hoạch xây dựng một khu đô thị mới. Theo bản vẽ, họ sẽ xây dựng n con đường mới. Mỗi con đường là một đoạn thẳng, hoặc chạy theo hướng Đông-Tây (song song với trục Ox ) hoặc chạy theo hướng Bắc-Nam (song song với trục Oy ).

Để dự trù kinh phí lắp đặt đèn tín hiệu và các hạng mục giao thông khác, ban quản lý cần biết chính xác có bao nhiêu ngã tư (giao điểm) được tạo thành bởi các con đường này. Một giao điểm được hình thành khi một con đường Đông-Tây và một con đường Bắc-Nam cắt nhau.

Hãy giúp họ viết một chương trình để đếm số lượng giao điểm.

Dữ liệu:

  • Dòng đầu tiên chứa một số nguyên n\ (1 \le n \le 2\times 10^5) - số lượng con đường.
  • n dòng tiếp theo, mỗi dòng chứa bốn số nguyên x_1, y_1, x_2, y_2 mô tả một con đường, là đoạn thẳng nối hai điểm (x_1, y_1) (x_2, y_2) . Các giá trị tọa độ có trị tuyệt đối không vượt quá 10^9 . Dữ liệu đảm bảo mỗi đoạn thẳng hoặc song song với trục Ox (tức là y_1 = y_2 ) hoặc song song với trục Oy (tức là x_1 = x_2 ).

Kết quả: Một số nguyên duy nhất là tổng số giao điểm.

Ví dụ:

Dữ liệu:

6
1 2 5 2
3 4 7 4
0 3 8 3
2 1 2 6
4 1 4 5
6 3 6 5

Kết quả:

7

Giải thích:

  • Đường ngang y=2 cắt đường dọc x=2 x=4 .
  • Đường ngang y=3 cắt đường dọc x=2 , x=4 x=6 .
  • Đường ngang y=4 cắt đường dọc x=4 x=6 .
  • Các giao điểm được tạo thành tại các tọa độ: (2, 2), (4, 2), (2, 3), (4, 3), (6, 3), (4, 4), (6, 4) .
  • Tổng cộng có 7 giao điểm.

Giới hạn:

  • Subtask \#1 (25% số điểm): n \le 1000 .
  • Subtask \#2 (25% số điểm): n \le 10^5 và các tọa độ có trị tuyệt đối không vượt quá 5000 .
  • Subtask \#3 (50% số điểm): Không có ràng buộc gì thêm.