#4495. [Neerc2013 North]intellectual

内存限制:256 MiB 时间限制:200 Sec

题目描述

Erast Kopi 是著名的数独设计者。他的成功引起了一系列的模仿和剽窃。在提起诉讼
之前,他决定找到更多的证据。
数独是一张 9*9 的表,被划分成 3*3 的小表格,每个小表格是 3*3 的格子。每个格子可
能包含 1 到 9 中的一个数字。任务就是往格子里填数字,使每行、每列和每个小表格都包含
1 到 9 中的所有数字。
Kopi 有一个数独的数据库,他想检查一下是否有相似的数独。如果数独 P 可以通过一
系列以下操作转变得到数独 Q,则称 P 相似于 Q.
1. 选两个数字 x 和 y,即把所有 x 换成 y,所有的 y 换成 x。
2. 交换行中三行一组中的两大组:1,2,3 行为一组,4,5,6 列为一组,7,8,9 行为一组
3. 交换两小行。
4. 交换列中三列一组中的两大组:1,2,3 列为一组,4,5,6 列为一组,7,8,9 列为一组
5. 交换两小列。
6. 左上到右下沿斜对称轴的翻转。
(如下图)
因此你需要帮助 Kopi 找到他的数据库中的相似的数独

输入格式

一个正整数 n(N<=20),表示在数据库中的数独个数。
下面包含 n 个数独:P1,P2...Pn,每个数独用一个 9*9 的方阵表示,1~9 表示有数字的
格子,点.表示空格子。两个数独间会有一个空行。在数据库的数独中没有空格。
这些数独不一定能被解出来。

输出格式

依 次 检 查 两 个 数 独 是 否 相 似 。 ( 先 检 查 P1 与
P2,P3,..,Pn,然后 P2 与 P3,P4...Pn,然后 P3 与 P4,P5...Pn,以此类推)
如果第 Pi 与 Pj 相似,那么输出“Yes”,否则输出“No”。如果相似,之后一行输出
将 Pi 变成 Pj 的步数 Qij,步数不要求最少,但要求不超过 1000。之后 Qij 行每行包括一个
命令。命令如下:
1. D x y 交换两个数字 x,y。
2. R a b 交换行中三大组中的(3a-2,3a-1,3a)三行与(3b-2,3b-1,3b)三行。
3. r a b 交换行中的两行 a,b。
4. C a b 交换列中三大组中的(3a-2,3a-1,3a)三列与(3b-2,3b-1,3b)三列。
5. c a b 交换列中的两列 a,b。
6. F 左上到右下沿斜对称轴的翻转。

样例

样例输入


			
4
.....1...
1........
.2.....8.
.........
8....9...
.........
....7....
...2...1.
2...4....
....2....
...7.4...
8.......9
.8...2..1
..2......
.........
.........
..1.8....
.........
1........
.........
.........
.........
.........
.........
.........
.........
.........
.....1...
1........
.2.....8.
.........
8....9...
.........
....7....
...2...1.
2...4....

样例输出


			
Yes
7 C
1 2
D 5 3
F r
7 9
c 6 5
C 2 3
D 1 8
No
Yes
0
No
Yes
8 R
1 2
C 2 3
c 4 5
F r
5 6
c 7 9
D 1 8
D 3 5
No

数据范围与提示