Thử thách này là để vinh danh những người chiến thắng hạng mục Tân binh của năm của Best of PPCG 2015 : bùn (vì tôi không phải là ngôn ngữ mà bạn đang tìm kiếm! ) Và quartata (cho Thực hiện một cỗ máy sự thật ). Xin chúc mừng!
Lý lịch
Trong các rãnh sâu nhất của đại dương, có một loài cá hình vuông hiếm gặp và khó nắm bắt được gọi là cá quartata . Nó trông giống như tàu lượn từ máy tự động di động Game of Life. Đây là hai loài cá có kích cỡ khác nhau:
-o-
--o
ooo
--oo--
--oo--
----oo
----oo
oooooo
oooooo
Bạn đã có thể chụp một bức ảnh về cá quartata, nhưng con cá này khá khó nhìn vì nó được bao phủ trong bùn. Bây giờ bạn sẽ phải viết một chương trình để làm sạch ảnh.
Đầu vào
Đầu vào của bạn là một lưới 2D hình chữ nhật của các ký tự .-o#
, được đưa ra dưới dạng một chuỗi phân tách dòng mới. Nếu bạn muốn, bạn có thể sử dụng đường ống |
thay vì dòng mới làm dấu phân cách và bạn có thể giả sử một dấu phân cách và / hoặc dấu phân cách trước.
Đầu vào sẽ chứa chính xác một quartata-fish có chiều dài bên 3*n
, trong đó n ≥ 1
là một số nguyên dương, được bao quanh bởi các khoảng thời gian .
đại diện cho đáy đại dương. Cá sẽ luôn ở trong định hướng được mô tả ở trên. Overlaid trên lưới này, sẽ có chính xác một vùng băm hình chữ nhật không trống #
, đại diện cho một đốm bùn. Các đốm màu có thể bao phủ cá quartata một phần hoặc toàn bộ. Một ví dụ đầu vào sẽ là
............
..--oo--....
..--oo--....
..---#####..
..---#####..
..ooo#####..
..oooooo....
Đầu ra
Đầu ra của bạn sẽ được tạo từ đầu vào bằng cách thay thế tất cả các giá trị băm bằng các ký tự .-o
, để lưới chứa chính xác một quartata-fish. Sẽ luôn có một cách duy nhất để thực hiện thay thế này đúng cách; đặc biệt, các đốm bùn sẽ bao phủ cá hoàn toàn chỉ khi kích thước của nó là 3 × 3. Đầu ra phải sử dụng cùng một dấu phân cách như đầu vào. Đối với đầu vào trên, đầu ra chính xác sẽ là
............
..--oo--....
..--oo--....
..----oo....
..----oo....
..oooooo....
..oooooo....
Quy tắc và tính điểm
Bạn có thể viết một chương trình đầy đủ hoặc một chức năng. Số byte thấp nhất sẽ thắng và các sơ hở tiêu chuẩn không được phép. Không có giới hạn thời gian: nếu bài nộp của bạn cuối cùng sẽ dừng lại với thời gian và tài nguyên không giới hạn, bạn vẫn ổn.
Các trường hợp thử nghiệm
Input:
.......
...-o-.
...--o.
##.ooo.
##.....
Output:
.......
...-o-.
...--o.
...ooo.
.......
Input:
...-o-.
...-#o.
...ooo.
.......
Output:
...-o-.
...--o.
...ooo.
.......
Input:
.........
.###.....
.###.....
.ooo.....
Output:
.........
.-o-.....
.--o.....
.ooo.....
Input:
.....
.###.
.###.
.###.
Output:
.....
.-o-.
.--o.
.ooo.
Input:
......
......
......
...###
...###
...###
Output:
......
......
......
...-o-
...--o
...ooo
Input:
###o--....
###o--....
###-oo....
###-oo....
###ooo....
###ooo....
###.......
Output:
--oo--....
--oo--....
----oo....
----oo....
oooooo....
oooooo....
..........
Input:
............
..--oo--....
..--oo--....
..---#####..
..---#####..
..ooo#####..
..oooooo....
Output:
............
..--oo--....
..--oo--....
..----oo....
..----oo....
..oooooo....
..oooooo....
Input:
...--oo--....
.#########...
.#########...
.#########...
...oooooo....
...oooooo....
.............
.............
Output:
...--oo--....
...--oo--....
...----oo....
...----oo....
...oooooo....
...oooooo....
.............
.............
Input:
..............
..............
.########.....
.########.....
.########-....
.########-....
.########o....
.########o....
.########o....
.########o....
.########.....
..............
Output:
..............
..............
..............
..............
....--oo--....
....--oo--....
....----oo....
....----oo....
....oooooo....
....oooooo....
..............
..............
Input:
.................
.................
..---ooo---......
..--#########....
..--#########....
..--#########....
..--#########....
..--#########....
..oo#########....
..oo#########....
..oo#########....
....#########....
Output:
.................
.................
..---ooo---......
..---ooo---......
..---ooo---......
..------ooo......
..------ooo......
..------ooo......
..ooooooooo......
..ooooooooo......
..ooooooooo......
.................
Input:
.........................
.........................
....----oooo----.........
....----########.........
....----########.........
....----########.........
....----########.........
....----########.........
....----########.........
....----########.........
....oooo########.........
....oooo########.........
....oooooooooooo.........
....oooooooooooo.........
.........................
Output:
.........................
.........................
....----oooo----.........
....----oooo----.........
....----oooo----.........
....----oooo----.........
....--------oooo.........
....--------oooo.........
....--------oooo.........
....--------oooo.........
....oooooooooooo.........
....oooooooooooo.........
....oooooooooooo.........
....oooooooooooo.........
.........................
......|......|......|...###|...###|...###
(trong trường hợp một giải pháp thử tất cả các tọa độ trên cùng bên trái có thể và cố gắng đặt 6x6 trên khu vực)