在黑暗的房间中醒来后,您会看到带有相应开关的矩形灯光网格。您决定使用一个坐标系,其左下方的灯代表(1,1),并且坐标随着向上(y方向)和向右(x方向)的增加而增加。网格的相同之处在于,将(a,b)处的开关拨动可切换(a,b)处的光以及与()在同一列或同一行的光a,b)。
您的输入将是一个由两个不同的字符组成的矩形网格,分别表示打开和关闭(我分别使用1和0)。同样,输入的一部分将是一系列至少一个坐标对(具有所需的任何格式和分隔符)的序列,它们代表您要翻转的开关。
输出将是同一网格,在作为输入提供的每个坐标对上将应用“翻转”。您可以选择如何格式化输入,尽管输出必须是网格,而不是数组。
样品
样品输入1
111111
111111
111111
111111
(3,2)
样品输出1
110111
110111
000000
110111
样品输入2
01101
10100
00010
11111
10110
(1,1), (5,5)
样品输出2
00010
00101
10011
01110
01000
样品输入3
1
(1,1)
样品输出3
0
样品输入4
00000
11111
00000
11111
(2,3), (2,3)
样品输出4
00000
11111
00000
11111
这是代码高尔夫。适用标准规则。以字节为单位的最短代码获胜。
相关:codegolf.stackexchange.com/questions/65738/crack-the-safe。不一样的问题。另一个挑战的目标是找出要做出的动作,这是关于应用给定动作列表的。
—
Reto Koradi 2015年
@RetoKoradi这也是不很相同的操作。(所选单元格本身也被切换的事实使这一点变得非常棘手。)
—
Martin Ender 2015年
我可以要求输入像
—
猫
<grid><RETURN><coordinate_x><RETURN><coordinate_y><RETURN>
吗?
哪种格式和分隔符:是否意味着它们可以是独立的输入(即“分隔符”是“输入”键)?
—
路易斯·门多
@LuisMendo是的,如果可行。
—
EEEEEEridan 2015年