Viết chương trình hoặc hàm trong bất kỳ ngôn ngữ lập trình nào có đầu vào / đối số thập lục phân 6 chữ số. Đầu vào / đối số có thể là 6 giá trị hoặc chuỗi 6 ký tự.
Chương trình của bạn sẽ xuất ra một khối ký tự hình chữ nhật rộng 8 ký tự chính xác chỉ chứa các hình lục giác được cung cấp kết hợp với khoảng trắng (+ Linefeed). Khối hình chữ nhật là sự kết hợp của các hình dạng khối nhỏ hơn, một cho mỗi trong số 6 giá trị được cung cấp.
Dưới đây là 2 đầu vào mẫu khử và mẫu đầu ra hợp lệ:
Đầu vào mẫu :
"464fa6" or [4, 6, 4, 15, 10, 6]
Một đầu ra giải pháp hợp lệ :
44 66 ff
44 66 ff
66 ff
aa f
aaa ffff
aa ffff
aaa
6 44
66666 44
Đầu vào mẫu :
"35bf12"
Một đầu ra giải pháp hợp lệ :
55555 22
bbbbbbbb
b b b
33
fffff 3
ff ff
ffffff 1
Quy tắc:
Đầu ra phải là một hình chữ nhật
Đầu ra có thể có chiều cao bất kỳ, nhưng phải rộng chính xác 8 ký tự
Các "khối bên trong", được gọi là "hình dạng khối", không thể kết nối với bất kỳ hình dạng khối nào khác, các hình dạng khối phải được phân tách bằng một bức tường của các khoảng trống chính xác rộng 1 ký tự theo chiều ngang, chiều dọc và đường chéo.
Tường của các khoảng trống không thể chạy song song với các cạnh bên ngoài, chỉ có các cạnh tường rộng 1 ký tự có thể tồn tại ở các cạnh đầu ra. Không nên tồn tại bất kỳ không gian được liên kết ở bất cứ đâu trên cạnh hình chữ nhật ngoài cùng trên đầu ra.
Chiều rộng của tường của các khoảng trống không được tại bất kỳ điểm nào vượt quá 1 ký tự.
Các hình dạng khối bên trong phải đồng nhất với diện tích của các ký tự x, trong đó x là giá trị thập lục phân được cung cấp và hình dạng phải bao gồm ký tự x trong đó x là đại diện cho ký tự thập lục phân.
Các hình dạng khối bên trong có thể ở bất kỳ dạng nào miễn là tất cả các ký tự hình dạng kết nối theo chiều dọc hoặc chiều ngang và không định giá các quy tắc cho bức tường của các khoảng trống.
6 hình khối có thể được đặt theo bất kỳ "trật tự" bên trong nào bên trong hình chữ nhật được xuất ra.
Phạm vi đầu vào hợp lệ: 1 ... 15 ("1" ... "f") cho mỗi hình dạng. Đầu vào cho chương trình của bạn không được chứa bất kỳ thông tin nào khác ngoài 6 số thập lục phân và đầu vào không được sắp xếp theo bất kỳ cách nào khác ngoài các mẫu trước khi được cung cấp cho chương trình / chức năng của bạn. Cho chúng tôi biết định dạng đầu vào mà giải pháp của bạn sử dụng (đầu vào không thể chứa bất kỳ thông tin nào khác ngoài các giá trị thập lục phân).
Một hình dạng khối bên trong có thể là rỗng. Lỗ nên có các ký tự khoảng trắng được tính là tường của các khoảng trống, có nghĩa là lỗ trong hình dạng khối bên trong rỗng không thể rộng hơn 1 ký tự.
Ba ví dụ về hình dạng rỗng hợp lệ:
aaa
a aaa
aaa
999
9 9
999
9
ffffff
f ff
ffffff
Một ví dụ về hình dạng rỗng không hợp lệ:
ffffff
f f
f f
fffff
Tôi giả sử rằng tất cả các kết hợp đầu vào không thể "giải quyết" theo các quy tắc ở trên, do đó tôi liệt kê 10 đầu vào mẫu mà chương trình của bạn sẽ có thể "giải quyết" (tất cả đều được xác minh có thể giải quyết được):
1. 464fa6 (same as the first sample)
2. 35bf12 (second example input seen above)
3. 111126
4. ff7fff
5. 565656
6. abcdef
7. 1357bd
8. 8c6a42
9. ab7845
10. 349a67
Chương trình của bạn sẽ có thể giải quyết bất kỳ trong số 10 đầu vào mẫu trong thời gian cộng hưởng. dịch thời gian cộng hưởng trong vòng 1 giờ trên máy tính để bàn tiêu chuẩn. Nói như: Lõi kép 3 Ghz, bộ nhớ 4GB để tham khảo.
Đây là mã golf, giải pháp ngắn nhất chiến thắng. Giải pháp có thể là một chương trình làm việc đầy đủ hoặc một chức năng