[Neerc2013 North]intellectual
时间限制:200s 空间限制:256MB
题目描述
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
提示
没有写明提示
题目来源
没有写明来源