Trong Cờ vua, trò chơi có thể kết thúc sau 4 lần di chuyển (mỗi lần 2 lần) với Người bạn đời của Fool .
Mục tiêu của bạn là tìm ra Mate of Halma của Fool : trò chơi Halma 2 người chơi để giảm thiểu số lượt chơi.
Có hơn 10 56 tiểu bang và tôi đã thấy hệ số phân nhánh vượt quá 1000, vì vậy rất có thể sẽ không có ai tìm ra giải pháp tối ưu. Thay vào đó, bạn đang cố gắng tìm giải pháp tốt nhất có thể.
Bạn nên gửi một danh sách các di chuyển và bất kỳ mã nào bạn đã sử dụng để tạo ra các di chuyển đó.
Giải thích về trò chơi
Halma tương tự như Cờ đam Trung Quốc, nhưng được chơi trên một bảng vuông 16 * 16.
Ban đầu, bảng trông như thế này:
Mục tiêu của trò chơi là di chuyển tất cả các quân cờ của bạn đến vị trí bắt đầu của quân cờ đối thủ.
Đến lượt của người chơi, anh ấy / cô ấy có thể:
Vượt qua ngã rẽ
Di chuyển một trong những mảnh của anh ấy / cô ấy đến một không gian trống liền kề. Các không gian liền kề bao gồm các đường chéo.
Lấy một trong những mảnh của anh ấy / cô ấy và thực hiện bất kỳ số lần sau: Nhảy mảnh này qua một mảnh liền kề, hạ cánh xuống khoảng trống đối diện với mảnh đó nhảy qua.
Đây là một ví dụ để minh họa loại di chuyển thứ 2.
Quy tắc
Gửi một danh sách các động thái hợp pháp dẫn đến kết thúc trò chơi.
Gửi bất kỳ mã bạn đã sử dụng để tạo danh sách.
Nếu bạn nhận được kết quả tốt hơn từ mã của người khác, hãy đăng kết quả đó trong một nhận xét hoặc chỉnh sửa bài đăng của họ với kết quả mới.
Mỗi lần di chuyển phải là None
để vượt qua ngã rẽ hoặc (x1,y1,x2,y2)
để di chuyển một mảnh, trong đó (x1,y1)
tọa độ của mảnh cần di chuyển và (x2,y2)
là đích đến của mảnh đó (đối với các bước nhảy, bỏ qua tọa độ trung gian). Các tọa độ bắt đầu ở (0,0)
góc trên cùng bên trái. tọa độ x tăng sang phải, tọa độ y tăng xuống. Di chuyển nên được phân tách bằng dòng mới.
Bạn có thể sử dụng tập lệnh python này để xác minh di chuyển của bạn. Sử dụng python halma_verify.py < file
để xác minh di chuyển trong file
.
Danh sách ngắn nhất chiến thắng.