Có tồn tại một trò chơi não gọi là liệt kê (mà tôi thực hiện, dựa trên Takuzu ). Thử thách của bạn là chơi game này.
Bài tập
Giải quyết một trò chơi của Enum Cả / Takuzu.
- Nhận lưới bắt đầu thông qua STDIN hoặc dòng lệnh.
- Xuất lưới đã giải quyết thông qua STDOUT hoặc ghi vào tệp.
Quy tắc
Một trò chơi được đặc trưng bởi một bảng 4 x 4, được tạo thành từ các ô màu đỏ và tím.
Phải có cùng số lượng ô màu đỏ và màu tím trong mỗi hàng và cột (mỗi ô 2 màu đỏ và 2 màu tím).
Không được có hàng hoặc cột giống hệt nhau.
Đầu vào
Lưới bắt đầu sẽ được cung cấp như là một chuỗi 16 ký tự / byte bao gồm chỉ 0
, 1
và 2
. Đây là một ví dụ:
0001100002001200
1
đại diện cho một tế bào màu đỏ và 2
đại diện cho một tế bào màu tím. Tất cả các bảng đầu vào sẽ được giải quyết.
Lưu ý: Nếu ngôn ngữ của bạn không hỗ trợ đầu vào chuỗi ký tự , bạn có thể lấy đầu vào dưới dạng một mảng số nguyên. Xin nêu trong câu trả lời của bạn rằng đây là trường hợp. Vì vậy, không có nhầm lẫn, đây là những gì nói mảng nên như thế nào:
[0, 0, 0, 1, 1, 0, 0, 0, 0, 2, 0, 0, 1, 2, 0, 0]
Không có mảng lồng nhau được cho phép.
Đầu ra
Bảng đã giải quyết phải là đầu ra có cùng định dạng như trên; một chuỗi 16 ký tự / byte, chỉ bao gồm 1
và 2
. Đây là giải pháp cho đầu vào ở trên:
2121112222111212
Một lần nữa, 1
đại diện cho một ô màu đỏ và 2
đại diện cho một ô màu tím.
Tiền thưởng
Phần thưởng -25 byte được cung cấp cho bất kỳ câu trả lời nào đưa ra bảng đã giải dưới dạng lưới ASCII. Dưới đây là một ví dụ về bảng đã đề cập trước đó.
2|1|2|1
-+-+-+-
1|1|2|2
-+-+-+-
2|2|1|1
-+-+-+-
1|2|1|2
Phần thưởng -50 byte được cung cấp cho bất kỳ câu trả lời nào xuất ra bảng đã giải có màu. Đây có thể là đầu ra dưới dạng hình ảnh hoặc văn bản màu.
Nếu văn bản màu được chọn, đầu ra sẽ như thế này:
2121
1122
2211
1212
Tuy nhiên, nếu một hình ảnh là phương thức đầu ra được chọn, tệp kết quả phải là 20x20 pixel, trong đó mỗi ô là một khối 5x5 pixel được tô màu. Đây là một ví dụ:
Dưới đây là các mã màu:
Red - #a73cba OR (167, 60, 186)
Purple - #f94a32 OR (249, 74, 50)
Mẫu
In: 0020010100000100
Out: 1221212112122112
In: 0010000200121000
Out: 2211112221121221
In: 1000100102000000
Out: 1122122122112112
0
, 1
và 2
? Còn một mảng hai chiều thì sao?