Vấn đề
Cho đầu vào a
trong đó a là một lưới các ký tự ở bất kỳ định dạng đầu vào nào miễn là nó chỉ có một phần tử cho mỗi 'khối' của đầu ra.
Và đầu vào b
trong đó b là một lưới các số có cùng kích thước với đầu vào a
.
Có hai loại đường, 1 đại diện cho đường đá được đánh dấu @
và 2 đại diện cho đường đất được đánh dấu bởi#
- Một
@
con đường được đặt ở giữa trong khối và có kích thước 6x6, nếu một con đường liền kề, bên đó được mở rộng đến biên giới ô lưới - Một
#
con đường được đặt ở giữa trong khối có kích thước 4 x 4, nếu một con đường liền kề, bên đó được mở rộng đến đường viền ô lưới
Xuất ra một lưới bù theo số dòng 8 x 8 của ký tự ASCII trong đầu vào a
và phủ một 'đường' từ đầu vào, b
ví dụ:
Đầu vào a=[[a,b,a],[b,a,b],[a,b,a]] b=[[1,1,1],[2,0,1],[2,0,0]]
Đầu ra:
Bước 1: lưới (đại diện của đầu vào 8x8 a
)
aaaaaaaabbbbbbbbaaaaaaaa
aaaaaaaabbbbbbbbaaaaaaaa
aaaaaaaabbbbbbbbaaaaaaaa
aaaaaaaabbbbbbbbaaaaaaaa
aaaaaaaabbbbbbbbaaaaaaaa
aaaaaaaabbbbbbbbaaaaaaaa
aaaaaaaabbbbbbbbaaaaaaaa
aaaaaaaabbbbbbbbaaaaaaaa
bbbbbbbbaaaaaaaabbbbbbbb
bbbbbbbbaaaaaaaabbbbbbbb
bbbbbbbbaaaaaaaabbbbbbbb
bbbbbbbbaaaaaaaabbbbbbbb
bbbbbbbbaaaaaaaabbbbbbbb
bbbbbbbbaaaaaaaabbbbbbbb
bbbbbbbbaaaaaaaabbbbbbbb
bbbbbbbbaaaaaaaabbbbbbbb
aaaaaaaabbbbbbbbaaaaaaaa
aaaaaaaabbbbbbbbaaaaaaaa
aaaaaaaabbbbbbbbaaaaaaaa
aaaaaaaabbbbbbbbaaaaaaaa
aaaaaaaabbbbbbbbaaaaaaaa
aaaaaaaabbbbbbbbaaaaaaaa
aaaaaaaabbbbbbbbaaaaaaaa
aaaaaaaabbbbbbbbaaaaaaaa
Bước 2: Lớp phủ với các đường được thể hiện bởi b
:
aaaaaaaabbbbbbbbaaaaaaaa
a@@@@@@@@@@@@@@@@@@@@@@a
a@@@@@@@@@@@@@@@@@@@@@@a
a@@@@@@@@@@@@@@@@@@@@@@a
a@@@@@@@@@@@@@@@@@@@@@@a
a@@@@@@@@@@@@@@@@@@@@@@a
a@@@@@@@@@@@@@@@@@@@@@@a
a@@@@@@abbbbbbbba@@@@@@a
bb####bbaaaaaaaab@@@@@@b
bb####bbaaaaaaaab@@@@@@b
bb####bbaaaaaaaab@@@@@@b
bb####bbaaaaaaaab@@@@@@b
bb####bbaaaaaaaab@@@@@@b
bb####bbaaaaaaaab@@@@@@b
bb####bbaaaaaaaab@@@@@@b
bb####bbaaaaaaaabbbbbbbb
aa####aabbbbbbbbaaaaaaaa
aa####aabbbbbbbbaaaaaaaa
aa####aabbbbbbbbaaaaaaaa
aa####aabbbbbbbbaaaaaaaa
aa####aabbbbbbbbaaaaaaaa
aa####aabbbbbbbbaaaaaaaa
aaaaaaaabbbbbbbbaaaaaaaa
aaaaaaaabbbbbbbbaaaaaaaa
Bước 3: Bù đắp từng dòng với vải lanh:
aaaaaaaabbbbbbbbaaaaaaaa
a@@@@@@@@@@@@@@@@@@@@@@a
a@@@@@@@@@@@@@@@@@@@@@@a
a@@@@@@@@@@@@@@@@@@@@@@a
a@@@@@@@@@@@@@@@@@@@@@@a
a@@@@@@@@@@@@@@@@@@@@@@a
a@@@@@@@@@@@@@@@@@@@@@@a
a@@@@@@abbbbbbbba@@@@@@a
bb####bbaaaaaaaab@@@@@@b
bb####bbaaaaaaaab@@@@@@b
bb####bbaaaaaaaab@@@@@@b
bb####bbaaaaaaaab@@@@@@b
bb####bbaaaaaaaab@@@@@@b
bb####bbaaaaaaaab@@@@@@b
bb####bbaaaaaaaab@@@@@@b
bb####bbaaaaaaaabbbbbbbb
aa####aabbbbbbbbaaaaaaaa
aa####aabbbbbbbbaaaaaaaa
aa####aabbbbbbbbaaaaaaaa
aa####aabbbbbbbbaaaaaaaa
aa####aabbbbbbbbaaaaaaaa
aa####aabbbbbbbbaaaaaaaa
aaaaaaaabbbbbbbbaaaaaaaa
aaaaaaaabbbbbbbbaaaaaaaa
Quy tắc:
- Khoảng trắng hàng đầu hoặc dòng mới được phép.
- Trailing khoảng trắng và dòng mới cho phép.
- Đây là môn đánh gôn nên mã ngắn nhất sẽ thắng
Đây là một trường hợp thử nghiệm bổ sung với tất cả các trường hợp cạnh trong tôi có thể nghĩ ra.
a
nhỏ hơn mảng b
.
['.', ',', '.', ',', '.', ',', '.']
, nhưng đầu ra giống như hàng đó [',', '.', ',', '.', ',', '.', ',']
. Ngoài ra, điều gì ngăn bạn có được điều này là đầu ra từ trường hợp thử nghiệm của bạn: gist.github.com/anonymous/dfcf3b754464f3ca4394d34e9f3bf123 Lưu ý rằng 1 thứ hai từ hàng đầu tiên của b đầu vào liền kề với 2 2. Tại sao bạn chọn chỉ kết nối nó với 2 đầu tiên (trong cùng một hàng)?