Trò chơi khối hộp
Đề bài
Mô tả
Trò chơi khối hộp là một trò chơi với một khối hộp chữ nhật kích thước đơn vị trên lưới hình chữ nhật được chia thành ô vuông đơn vị. Các hàng của lưới được đánh số từ tới từ trên xuống dưới và các cột của lưới được đánh số từ tới từ trái qua phải. Ô nằm trên giao của hàng và cột được gọi là ô . Ban đầu, khối hộp được đặt ở góc trái trên của lưới , cụ thể mặt đáy khối hộp chiếm đúng ô của lưới, là các ô nằm trong hình chữ nhật con của lưới với ô ở góc trái trên là và ô ở góc phải dưới là (khối hộp cao ). Mỗi bước, người chơi có thể thực hiện một trong các loại thao tác sau:
- Đẩy khối hộp tịnh tiến lên trên, xuống dưới, sang trái hoặc sang phải một ô;
- Lật khối hộp lên trên, xuống dưới, sang trái hoặc sang phải một ô.
Khi lật, khối hộp quay độ quanh cạnh đáy ở phía được lật. Chẳng hạn, nếu mặt đáy đang chiếm hàng, cột và khối hộp cao thì sau khi lật sang phải, mặt đáy chiếm cùng hàng đó và cột nằm ngay bên phải các cột cũ, còn khối hộp cao ; lật sang trái tương tự với cột nằm ngay bên trái. Sau khi lật lên trên, mặt đáy chiếm cùng cột đó và hàng nằm ngay phía trên các hàng cũ, còn khối hộp cao ; lật xuống dưới tương tự với hàng nằm ngay phía dưới. Ví dụ, với khối hộp kích thước nằm ở hàng , cột và của một lưới : đẩy sang phải đưa nó tới cột và ; lật sang phải đưa nó thành khối đứng chiếm đúng ô (cao ); lật sang trái đưa nó thành khối đứng chiếm đúng ô ; lật lên trên đưa nó tới hàng , cột và (cao ).
Khi bắt đầu chơi, tất cả các ô mà khối hộp đè lên được bật sáng màu xanh và có ô khác trên lưới được bật sáng màu đỏ, các ô còn lại ở trạng thái tắt. Một thao tác được gọi là hợp lệ, nếu sau khi thực hiện thao tác này, khối hộp vẫn nằm gọn trên lưới và không đè lên ô sáng màu đỏ nào. Sau khi một thao tác được thực hiện, những ô bị khối hộp đè lên đang ở trạng thái tắt sẽ được bật sáng màu xanh, những ô đang sáng xanh vẫn giữ nguyên trạng thái bật sáng màu xanh. Nhiệm vụ của người chơi là tìm cách thực hiện dãy các thao tác hợp lệ để bật được nhiều ô sáng màu xanh nhất.
Yêu cầu: Cho kích thước khối hộp, kích thước của lưới và vị trí của các ô sáng màu đỏ, hãy xác định số lượng nhiều nhất các ô được bật sáng màu xanh mà người chơi có thể đạt được.
Dữ liệu vào
- Dòng thứ nhất chứa sáu số nguyên dương , , , , , , các số được ghi cách nhau bởi dấu cách;
- Dòng thứ trong số dòng tiếp theo chứa hai số nguyên dương được ghi cách nhau bởi dấu cách là tọa độ (hàng, cột) của một ô đã bật sáng màu đỏ .
Dữ liệu ra
In ra một số nguyên duy nhất là số lượng nhiều nhất các ô được bật sáng màu xanh mà người chơi có thể đạt được.
Ràng buộc
- ;
- , ; các ô đỏ khác nhau và không nằm dưới khối hộp lúc ban đầu.
Subtasks
- Subtask 1 ( số test, số điểm): ; ;
- Subtask 2 ( số test, số điểm): ; ;
- Subtask 3 ( số test, số điểm): ;
- Subtask 4 ( số test, số điểm): .
Ví dụ
| Input | Output | Giải thích |
|---|---|---|
| 1 2 1 3 3 2 2 2 3 3 |
7 | Hai ô đỏ là và . Người chơi có thể thực hiện dãy thao tác: lật sang phải, đẩy xuống dưới, đẩy lên trên, đẩy sang trái, đẩy sang trái, đẩy xuống dưới, đẩy xuống dưới, cuối cùng đẩy sang phải để bật được ô của lưới sáng màu xanh (mọi ô trừ hai ô đỏ). |
| 2 2 2 4 4 1 3 3 |
12 | Khối lập phương cạnh chỉ đặt được ở các vị trí có ô góc trái trên , , , , (mọi vị trí khác đè lên ô đỏ ). Các ô , , không bao giờ được bật sáng. |
Bình luận