Một hiệp sĩ điền vào là một trận lụt bằng cách sử dụng kết nối của quân cờ hiệp sĩ. Đặc biệt:
1 1
1 1
0
1 1
1 1
(0 là điểm ban đầu, 1 giây hiển thị các ô được kết nối)
Thử thách
Đưa ra một lưới 2D của không gian và các bức tường, và một vị trí ban đầu, thực hiện một hiệp sĩ điền vào lưới. Mã ngắn nhất sẽ thắng.
Quy tắc
Bạn có thể lấy đầu vào và tạo đầu ra ở bất kỳ định dạng nào bạn thích (hình ảnh, chuỗi, mảng, bất cứ thứ gì). Bạn có thể lấy vị trí ban đầu làm một phần của lưới đầu vào hoặc làm tọa độ riêng. Với mục đích giải thích này, định dạng sau sẽ được sử dụng:
######## # = wall ######## x = initial location ## x ## ## ## ######## ## ## ######## ########
Đầu ra là một bản sao của lưới đầu vào với kết quả điền vào hiệp sĩ được thêm vào
Điền của bạn không được có cùng "màu" với không gian hoặc tường, nhưng có thể giống với điểm đánh dấu vị trí ban đầu. Ví dụ: được cung cấp hình ảnh ở trên, một đầu ra hợp lệ sẽ là:
######## # = wall ######## @ = fill (could also have been x) ## @ @## ## @ @## ######## ##@ @ ## ######## ########
Bạn có thể giả định rằng lưới đầu vào sẽ luôn chứa một bức tường 2 ô ở tất cả các phía
- Bạn có thể cho rằng vị trí ban đầu sẽ không bao giờ ở trong tường
- Bạn có thể cho rằng lưới sẽ không bao giờ lớn hơn 1000x1000
- Nội tích ổn
- Mã ngắn nhất (tính bằng byte) thắng
Các trường hợp thử nghiệm
Trong tất cả các trường hợp thử nghiệm, #
biểu thị một bức tường, biểu thị không gian trống và
x
biểu thị vị trí ban đầu của vật liệu lấp. @
biểu thị điền vào đầu ra.
Input 1:
########
########
## x ##
## ##
########
## ##
########
########
Output 1:
########
########
## @ @##
## @ @##
########
##@ @ ##
########
########
Input 2:
############
############
## ## x##
## ## ##
##### ##
## ##
############
############
Output 2:
############
############
## ##@@@@@##
##@##@@@@@##
#####@@@@@##
## @@@@@@@##
############
############
Input 3:
####################
####################
## ## ##
## ## ##
## ## ######## ##
## ## ######## ##
## ## ## ## ##
## ## ## ## ##
## ## ## ## ##
## ## ## ## ##
## ## ######## ##
## ## ######## ##
## ## ## ##
## ## x## ##
## ############ ##
## ############ ##
## ##
## ##
####################
####################
Output 3:
####################
####################
##@@##@@@@@@@@@@@@##
##@@##@@@@@@@@@@@@##
##@@##@@########@@##
##@@##@@########@@##
##@@##@@## ##@@##
##@@##@@## ##@@##
##@@##@@## ##@@##
##@@##@@## ##@@##
##@@##@@########@@##
##@@##@@########@@##
##@@##@@@@@@@@##@@##
##@@##@@@@@@@@##@@##
##@@############@@##
##@@############@@##
##@@@@@@@@@@@@@@@@##
##@@@@@@@@@@@@@@@@##
####################
####################
Input 4:
################
################
## ###
## x ###
## ####### ###
## ####### ###
## ## ## ###
## ## ## ###
## ## ## ###
## ######## ##
## ######## ##
## ## ##
## ## ##
################
################
Output 4:
################
################
## @ @ ###
## @ @ @ ###
## ####### ###
##@ ####### @###
## ## ## ###
## @## ##@ ###
## ## ## ###
##@ ########@ ##
## ######## ##
## @ @ ## @##
## @ @## ##
################
################
Input 5:
##############
##############
## ###
## ###
## ###
## ### ###
## #x# ###
## ### ###
## ###
## ###
## ###
##############
##############
Output 5:
##############
##############
##@@@@@@@@@###
##@@@@@@@@@###
##@@@@@@@@@###
##@@@###@@@###
##@@@#@#@@@###
##@@@###@@@###
##@@@@@@@@@###
##@@@@@@@@@###
##@@@@@@@@@###
##############
##############