#3490. 4495. [Neerc2013 North]intellectual

4495. [Neerc2013 North]intellectual

#4495. [Neerc2013 North]intellectual

题目描述

Erast Kopi 是著名的数独设计者。他的成功引起了一系列的模仿和剽窃。在提起诉讼

之前,他决定找到更多的证据。

数独是一张 99 的表,被划分成 33 的小表格,每个小表格是 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. 左上到右下沿斜对称轴的翻转。

(如下图)

![image](file://22(1).png)

因此你需要帮助 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

数据范围与提示