Giao các nửa mặt phẳng trong O(N log N)
Một nửa mặt phẳng có hướng được biểu diễn bởi tia đi từ điểm P đến điểm Q, quy ước nửa mặt phẳng hợp lệ nằm ở phía bên trái của vector PQ (tức là PQ × PX…
Tiến độ của tôi ở bài này
Điểm được lưu vào tài khoản sau khi chấm bài.
Đang tải điểm của bạn…
Kiến thức và chủ đề
Kiến thức tiên quyết: cross-product, line-intersection, deque.
Nội dung đề bài
Mô tả bài toán
Một nửa mặt phẳng có hướng được biểu diễn bởi tia đi từ điểm P đến điểm Q, quy ước nửa mặt phẳng hợp lệ nằm ở phía bên trái của vector PQ (tức là PQ × PX ≥ 0).
Cho N nửa mặt phẳng và một hộp giới hạn [-104, 104] × [-104, 104].
Yêu cầu: Tính diện tích phần giao chung (miền khả thi lồi) của tất cả N nửa mặt phẳng này bên trong hộp giới hạn. Kết quả in ra với đúng 2 chữ số thập phân.
Dữ liệu vào
- Dòng đầu chứa số nguyên N (1 ≤ N ≤ 50,000).
- N dòng tiếp theo, mỗi dòng gồm 4 số nguyên x1, y1, x2, y2 đại diện cho vector có hướng từ (x1, y1) đến (x2, y2) xác định nửa mặt phẳng bên trái (-104 ≤ xi, yi ≤ 104, hai điểm phân biệt).
Dữ liệu ra
- In ra một số thực duy nhất là diện tích phần giao với 2 chữ số thập phân sau dấu phẩy (ví dụ:
100.00).
Quy ước nộp bài
- Chỉ cần viết một chương trình đọc
stdinvà in rastdout. Bài này không yêu cầu viết hàm. - Không dùng
coutđể in lời nhắc trước khi đọc dữ liệu. Lời nhắc sẽ lọt vàostdoutvà làm bài sai. - Chỉ in đúng nội dung ở mục Output. Không in thêm nhãn, dòng trống hay ký tự thừa.
- Output được so khớp từng ký tự, phân biệt chữ hoa/thường và dấu câu.
Input
- Các tham số truyền vào hàm/lớp solution hoặc dữ liệu đầu vào theo định dạng mô tả.
Output
- Kết quả trả về của hàm/lớp solution hoặc dữ liệu in ra màn hình theo đúng đặc tả.
Ràng buộc
- Thời gian chạy tối đa: 1000ms.
- Giới hạn bộ nhớ: 256MB.
- Dữ liệu đầu vào tuân thủ đúng định dạng và miền giá trị được mô tả.
Ví dụ 1
Input
Input:
4
0 0 10 0
10 0 10 10
10 10 0 10
0 10 0 0
Output:
100.00Output
Thành công / Đáp ứng đầy đủ ràng buộcGiải thích
Dữ liệu kiểm thử mẫu và kết quả thực thi theo yêu cầu.
Gợi ý và lời giải chỉ mở sau khi bạn bấm Nộp bài. Giáo viên và quản trị viên mở được ngay.
Góp ý & báo lỗi bài tập
Đề bài chưa rõ, test có vấn đề hay bạn có ý tưởng giúp bài tốt hơn? Gửi cho đội ngũ AI Empire nhé — mỗi góp ý đều được đọc.
