#1857. 超级翻转
超级翻转
Description
有一个n* n的网格,每一“格”上有一个可以翻转的方块,方块的两面分别涂成黑、白两种颜色。另外,有一个沿着网格线活动的东西——不妨称之为“动子”。初始时,每个方块随机地被翻成黑或白色,“动子”停在网格线的某个顶点上。例如如图一就是一个4*4的网格的一种可能的开局情况。 “动子”在网格线上运动时,从一个顶点A到相邻的另一个顶点B之后,以网格线AB为边的两个或一个网格上的方块就会翻转——白变黑,黑变白。例如图一的“动子”向右移动一步之后变成图二,向下移动一步之后变成图三。 给定一个初始状态,求“动子”的一种运动轨迹,可以将所有的格子变成白色,最后“动子”停在哪里是无所谓的。
Format
Input
第一行T表示数据组数
对于每组数据,第一行n表示网格大小
接下来n行n列描述初始网格,0表示白色,1表示黑色
接下来一行x y表示动子的初始位置,左上角为(1,1),左下角为(n+1,1)
Output
对于每组数据,在一行中输出一个相应的答案
若无解则输出“No Solution!”,否则输出一个仅包含‘L’‘R’‘U’‘D’(上下左右)的字符串表示“动子”的移动路线,有多解时任意输出任意一组解即可,要求输出的解长度不超过5000
Samples
3
1
1
1 1
2
0 1
1 0
2 2
7
1 1 0 0 1 0 1
1 1 0 1 0 1 1
1 0 1 0 1 1 1
0 1 0 1 1 0 1
1 1 1 1 1 1 1
1 1 1 1 1 1 1
1 1 1 1 1 1 1
1 1
R
ULDR
No Solution!