Xem thêm: Thực hiện di chuyển trên một bảng Go .
Bài tập
Go là một trò chơi bảng trong đó hai người chơi (Đen và Trắng) đặt đá trên các giao điểm của các đường lưới trên bảng 19 × 19. Đen di chuyển trước - ví dụ, trên D4:
Trong thử thách này, bạn phải thực hiện tọa độ bảng Go D4
như đầu vào và xuất đại diện ASCII của một bảng với bước di chuyển đầu tiên được phát tại điểm đã cho.
Lưu ý rằng không có cột I. Điều này, về mặt lịch sử, để giảm sự nhầm lẫn với J và L.
Đầu ra này bao gồm 19 dòng, mỗi dòng chứa 19 ký tự. Điểm với đá trên đó được đánh dấu O
. Điểm trống trên bảng được hiển thị như .
, ngoại trừ chín điểm sao (ít D4
, D10
, D16
, K4
, K10
, K16
, Q4
, Q10
, và Q16
), được đánh dấu *
.
Ví dụ: được cung cấp F5
làm đầu vào, đầu ra câu trả lời của bạn phải là:
...................
...................
...................
...*.....*.....*...
...................
...................
...................
...................
...................
...*.....*.....*...
...................
...................
...................
...................
.....O.............
...*.....*.....*...
...................
...................
...................
Và được đưa ra Q16
làm đầu vào, đầu ra của bạn phải là:
...................
...................
...................
...*.....*.....O...
...................
...................
...................
...................
...................
...*.....*.....*...
...................
...................
...................
...................
...................
...*.....*.....*...
...................
...................
...................
Quy tắc
Bạn có thể viết một hàm lấy tọa độ làm đối số hoặc chương trình đọc tọa độ từ dòng lệnh hoặc từ
STDIN
.Bạn có thể chọn chấp nhận đầu vào bằng chữ thường hoặc chữ hoa, nhưng câu trả lời của bạn không cần xử lý cả hai.
Đầu vào là luôn luôn một chuỗi duy nhất như
a1
hoặcT19
, không bao giờ một số chuỗi + hoặc hai chuỗi.Nếu bạn viết một chương trình đầy đủ, câu trả lời của bạn phải được in thành
STDOUT
một chuỗi, tùy ý theo sau là một dòng mới. Nếu câu trả lời của bạn là một chức năng, bạn có thể in raSTDOUT
, hoặc trả về một chuỗi, hoặc trả lại một mảng / danh sách các chuỗi (hàng), hoặc trả lại một mảng hai chiều hoặc danh sách lồng nhau của các nhân vật.Đây là mã golf . Câu trả lời ngắn nhất trong byte thắng.
f("G", 14)
, đúng không?