Quy hoạch hàng rào
Đề bài
Mô tả
Bác John nuôi con bò, đánh số từ đến . Đàn bò chia thành các nhóm giao tiếp: có cặp bò kêu với nhau, và hai con bò kêu trực tiếp với nhau thì thuộc cùng một nhóm. Quan hệ này lan truyền, nghĩa là hai con bò cùng nhóm nếu chúng nối được với nhau qua một dãy các cặp kêu. Mỗi con bò thuộc đúng một nhóm.
Mỗi con bò đứng ở một vị trí trên bản đồ nông trại, không có hai con bò nào đứng cùng một chỗ.
Bác John muốn dựng một hàng rào hình chữ nhật có các cạnh song song với hai trục tọa độ, sao cho có ít nhất một nhóm nằm trọn vẹn bên trong hàng rào. Bò nằm đúng trên cạnh hàng rào vẫn được tính là ở bên trong. Hàng rào được phép có chiều rộng bằng hoặc chiều cao bằng .
Hãy tìm chu vi nhỏ nhất của một hàng rào thỏa mãn yêu cầu trên.
Dữ liệu vào
- Dòng đầu chứa hai số nguyên và .
- dòng tiếp theo, dòng thứ chứa hai số nguyên và là tọa độ của con bò thứ .
- dòng cuối, mỗi dòng chứa hai số nguyên và cho biết bò và bò kêu với nhau.
Dữ liệu ra
Một số nguyên duy nhất là chu vi nhỏ nhất tìm được.
Ràng buộc
- Không có hai con bò nào cùng vị trí.
- Mỗi con bò kêu với ít nhất một con bò khác, và không có cặp nào được liệt kê hai lần.
Ví dụ
| Input | Output | Giải thích |
|---|---|---|
| 7 5 0 5 10 5 5 0 5 10 6 7 8 6 8 4 1 2 2 3 3 4 5 6 7 6 |
10 | Có hai nhóm. Nhóm thứ nhất gồm bò , hình chữ nhật nhỏ nhất bao nó trải từ đến và từ đến , chu vi . Nhóm thứ hai gồm bò , trải từ đến và từ đến , chu vi . |
| 6 3 0 0 0 4 5 5 6 5 10 0 10 10 1 2 3 4 5 6 |
2 | Ba nhóm lần lượt là với chu vi , với chu vi , và với chu vi . Hàng rào rẻ nhất bao nhóm và có chiều cao bằng . |
Bình luận