1232: 奥运会的挂钟

内存限制:128 MB 时间限制:1 S 标准输入输出
题目类型:传统 评测方式:文本比较 上传者:
提交:12 通过:6

题目描述

在这里插入图片描述
在2008北京奥运会雄伟的主会场的墙上,挂着如上图所示的3*3的九个挂钟(一开始指针即时针指向的位置请根据输入数据调整)。然而此次奥运会给与了大家一个机会,去用最少的移动操作改变上面的挂钟的时间全部为12点正(我们只考虑时针)。然而每一次操作并不是任意的,我们必须按照下面给出的列表对于挂钟进行改变。每一次操作我们给而且必须给指定的操作挂钟进行,每一个挂钟顺时针转动90度。列表如下:
操作   指定的操作挂钟
 1     ABDE
 2     ABC
 3     BCEF
 4     ADG
 5     BDEFH
 6     CFI
 7     DEGH
 8     GHI
 9     EFHI

输入格式

        程序按照标准的3*3格式读入,一共9个0-3的数。0代表12点,1代表3点,2代表6点,3代表9点。         


 0=12  o'clock,  1=3  o'clock,  2=6  o'clock,  3=9  o'clock.

输出格式

       输出一个最短的能够使所有挂钟指向12点的移动操作序列,中间以空格隔开,最后有空格,加回车。这一条最短操作需要是所有最短操作中最小的,也就是说选择最小的第一个操作数,如果第一个操作数相等,那么选择最小的第二个操作数……以此类推。值得肯定的是,这一条操作序列是唯一的。      

输入样例 复制

3 3 0
2 2 2
2 1 2

输出样例 复制

4 5 8 9

数据范围与提示

3*3阵列中有九个时钟(图1)。目标是尽可能少地移动,将所有刻度盘返回到12点钟。有九种不同的方法可以转动时钟上的刻度盘。每一种方式都被称为移动。为每次移动选择一个数字1到9。根据下图2,该数字将在受影响的时钟上顺时针转动表盘90度。

Move Affected clocks

1     ABDE
2     ABC
3     BCEF
4     ADG
5     BDEFH
6     CFI
7     DEGH
8     GHI
9     EFHI 

分类标签