#P16827. [NWRRC 2022]Dice Grid
[NWRRC 2022]Dice Grid
题目描述
Debora 正在玩一款电子游戏。在其中一个关卡中,她得到一个立方体和一个平放的彩色 网格。
第 行第 列的格子记为 ,颜色为 。Debora 可以看到整个网格,包括每个格子的颜色。
立方体每个面的大小与一个网格格子相同。当我们说立方体位于格子 时,表示它的底面与格子 完全重合。底面的对面称为顶面;朝向格子 的面称为前面;朝向 的面称为后面;朝向 的面称为右面;朝向 的面称为左面。
立方体初始位于 ,目标是把它滚动到 。
从任意格子 出发,Debora 只能:
- 向下滚到 ;
- 向右滚到 。
向下滚动时,立方体绕底面与前面的公共棱旋转,因此原来的前面会成为新的底面。向右滚动的定义类似,立方体绕底面与右面的公共棱旋转。
立方体的六个面目前都没有颜色。Debora 可以为每个面任意选择一种颜色。在游戏的每一个时刻,包括立方体位于起点 和终点 时,立方体底面的颜色必须与当前位置格子的颜色相同。
请给立方体的六个面染色,使 Debora 能够从 滚到 并始终满足上述条件。若无法做到,也请判断无解。
输入格式
输入包含多组测试数据。
第一行包含整数 ,表示测试数据组数。
对于每组测试数据:
- 第一行包含整数 ,表示网格大小;
- 接下来 行,每行包含 个整数,第 行第 个整数为 。
数据范围
所有测试数据的 之和不超过 。
输出格式
对于每组测试数据:
-
若不存在合法染色,输出一行
No; -
否则先输出一行
Yes,再输出六个整数分别表示立方体初始位于 时,底面、左面、后面、前面、右面和顶面的颜色。
每个输出颜色必须满足
若有多种合法染色,输出任意一种。
样例
4
2
1 1
0 0
3
1 2 3
9 6 4
7 8 1
4
1 2 3 4
9 8 7 5
10 8 12 2
13 14 15 6
4
1 2 3 4
5 6 7 8
9 10 11 12
13 14 15 16
Yes
1 3 4 0 0 5
Yes
1 10 10 4 2 3
Yes
1 4 6 5 2 3
No
样例说明
在第三组样例中,可以依次向右、向右、向右、向下、向下、向下,把立方体从 移动到 。