Trong thử thách này, tôi có một cánh đồng bơ mà tôi muốn ép nhanh nhất và hoàn toàn có thể. Bạn có thể viết một chương trình hoặc chức năng để giúp tôi tìm ra cách ép tất cả bơ một cách hoàn hảo không?
Là đầu vào, bạn sẽ lấy bơ dưới dạng lưới mx mvuông, trong đó mmột số nguyên nằm trong khoảng từ 3 đến 6. Mỗi ô vuông chứa chính xác một quả bơ. Bơ có một số giai đoạn của nước ép:
Giai đoạn 1: Bơ chưa được ép nước.
Giai đoạn 2: Bơ đã được ép một phần.
Giai đoạn 3: Quả bơ đã được ép hoàn toàn.
Giai đoạn 4: Quả bơ đã phát nổ do quá nhiều nước.
Khi bạn sử dụng một công cụ ép, bơ trong vùng tác dụng của công cụ ép đó sẽ chuyển sang giai đoạn tiếp theo. Bơ nổ có rất nhiều lực và sẽ phá hủy toàn bộ cánh đồng bơ, vì vậy hãy chắc chắn rằng không có quả bơ nào phát nổ!
Dưới đây là một ví dụ về một lưới bơ. Trong các ví dụ này, tôi đã sử dụng tọa độ 0,0cho góc dưới bên trái và tọa độ 2,2cho góc trên bên phải, mặc dù bạn có thể điều chỉnh hệ tọa độ cho phù hợp với ngôn ngữ của mình.
112
221
231
Mục tiêu là làm cho tất cả các loại bơ được ép hoàn hảo (tức là giai đoạn 3). Để đạt được điều này, bạn có ba công cụ ép khác nhau trong sở hữu của bạn. Mỗi công cụ ép có một khu vực hiệu quả khác nhau, nhưng tất cả đều làm tăng độ ngon ngọt của bơ bị ảnh hưởng lên 1.
Dưới đây là tất cả các công cụ bạn có theo ý của bạn. Bạn sử dụng máy ép bằng cách chỉ định chữ cái đầu tiên của công cụ, sau đó là tọa độ mà bạn muốn ép. Ví dụ: để sử dụng Bộ cắt trên hình vuông 5,2, bạn sẽ xuất ra S 5,2.
Máy thái : Tách tọa độ đích và quả bơ ở hai bên.
112 112 112
221 --> XXX --> 332
231 231 231
Vắt : Tách tọa độ đích và quả bơ bên trên và bên dưới.
112 1X2 122
221 --> 2X1 --> 231 --> kaboom!
231 2X1 241
Rocket Launcher : Tách tọa độ mục tiêu và tất cả các quả bơ liền kề.
112 1X2 122
221 --> XXX --> 332
221 2X1 231
Đầu vào và đầu ra mẫu
323
212
323
G 1,1
S 1,1
3312
3121
1213
2133
R 0,0
R 1,1
R 2,2
R 3,3
22322
22222
22222
33233
33333
G 0,3
G 1,3
G 2,2
G 3,3
G 4,3
222332
333221
222332
333222
222333
333222
S 1,5
S 1,3
S 1,1
S 4,5
S 4,3
S 4,1
G 5,4