Quân tượng
Đề bài
Mô tả
Xét bàn cờ vuông kích thước . Các dòng được đánh số từ đến , từ dưới lên trên. Các cột được đánh số từ đến từ trái qua phải. Ô nằm trên giao của dòng và cột được gọi là ô . Trên bàn cờ có () quân cờ. Với , quân cờ thứ ở ô , . Không có hai quân cờ nào ở trên cùng một ô. Trong số các ô còn lại của bàn cờ, tại ô có một quân tượng. Mỗi một nước đi, từ vị trí đang đứng quân tượng chỉ có thể di chuyển đến được những ô trên cùng đường chéo với nó mà trên đường đi không phải qua các ô đã có quân.
Cần phải đưa quân tượng từ ô xuất phát về ô đích . Giả thiết là ở ô đích không có quân cờ. Nếu ngoài quân tượng không có quân nào khác trên bàn cờ thì chỉ có trường hợp: hoặc là không thể tới được ô đích, hoặc là tới được sau không quá nước đi. Khi trên bàn cờ còn có các quân cờ khác, vấn đề sẽ không còn đơn giản như vậy.
Yêu cầu: Cho kích thước bàn cờ , số quân cờ hiện có trên bàn cờ và vị trí của chúng, ô xuất phát và ô đích của quân tượng. Hãy xác định số nước đi ít nhất cần thực hiện để đưa quân tượng về ô đích hoặc đưa ra số nếu điều này không thể thực hiện được.
Dữ liệu vào
- Dòng đầu tiên chứa số nguyên , , , , , .
- Nếu thì mỗi dòng thứ trong dòng tiếp theo chứa một cặp số nguyên xác định vị trí quân thứ .
Hai số liên tiếp trên cùng một dòng được ghi cách nhau ít nhất một dấu cách.
Dữ liệu ra
Gồm dòng duy nhất là số nước đi tìm được.
Ràng buộc
- , .
- ; ô và ô không có quân cờ.
Subtasks
- Subtask 1 ( số test): .
- Subtask 2 ( số test): .
Mỗi subtask gồm nhiều test, mỗi test được chấm điểm riêng.
Ví dụ
| Input | Output | Giải thích |
|---|---|---|
| 8 3 7 2 1 4 5 4 3 4 4 7 |
3 | Nếu không có quân cờ nào khác thì chỉ cần nước: , nhưng quân ở chặn nước đầu tiên. Cách đi ít nước nhất là . |
| 4 1 1 1 1 2 2 2 |
-1 | Ô đích khác màu với ô xuất phát. |
Bình luận