Cắt hình
Đề bài
Mô tả
Một mảnh giấy hình chữ nhật được cắt bởi những nhát kéo. Cho biết tọa độ của mảnh giấy cũng như các nhát cắt, hãy xác định số mảnh được cắt rời.
Giả thiết mảnh giấy được đặt trong một hệ tọa độ sao cho các mép giấy song song với các trục tọa độ, góc dưới trái của nó trùng với điểm và góc trên phải của nó trùng với điểm .
Mỗi nhát cắt được xác định bởi hai đầu mút trên biên của mảnh giấy sao cho đảm bảo đoạn thẳng nối hai đầu mút này thực sự cắt mảnh giấy, tức là hai đầu mút không cùng nằm trên một cạnh của hình chữ nhật (nhát cắt không chạy dọc theo mép giấy). Mỗi nhát cắt là một đường thẳng cắt ngang toàn bộ mảnh giấy giữa hai đầu mút của nó và chia đôi mọi mảnh mà nó đi qua; các mảnh không bị dịch chuyển giữa các nhát cắt.
Nhiều nhát cắt có thể cùng đi qua một điểm, có thể chung đầu mút, và hai nhát cắt có thể trùng nhau (cùng một đoạn thẳng, kể cả khi hai đầu mút được ghi theo thứ tự ngược lại); nhát cắt trùng với một nhát cắt trước đó không tạo thêm mảnh nào.
Dữ liệu vào
- Dòng đầu ghi hai giá trị và .
- Dòng tiếp theo ghi số nhát cắt .
- dòng tiếp theo, mỗi dòng ghi tọa độ của một nhát cắt gồm số: số đầu là hoành độ và tung độ của một đầu mút và số sau là hoành độ và tung độ của đầu mút còn lại.
Các tọa độ trong dữ liệu đều là những số nguyên và được ghi cách nhau ít nhất một dấu cách nếu trên cùng một dòng.
Dữ liệu ra
In ra số mảnh bị cắt rời.
Ràng buộc
- .
- Mọi đầu mút là điểm nguyên nằm trên biên của mảnh giấy: , và hoặc .
- Hai đầu mút của mỗi nhát cắt không cùng nằm trên một cạnh của hình chữ nhật.
Ví dụ
| Input | Output | Giải thích |
|---|---|---|
| 10 10 6 3 10 0 9 8 0 3 10 0 0 10 2 0 8 10 6 9 10 4 0 10 6 0 1 |
13 | Mảnh giấy bị cắt bởi nhát kéo thành mảnh. Có giao điểm bên trong mảnh giấy; tại điểm có ba nhát cắt thứ , , cùng đi qua. Nhát cắt thứ và thứ chung đầu mút trên mép giấy, điểm này không tạo thêm mảnh. |
| 4 4 4 0 0 4 4 4 4 0 0 0 4 4 0 2 0 2 4 |
6 | Nhát cắt thứ trùng nhát cắt thứ nên không tạo thêm mảnh. Ba nhát cắt còn lại (hai đường chéo và đường ) cùng đi qua tâm và chia mảnh giấy thành mảnh. |
Bình luận