luogu#P1213. [USACO1.4] [IOI1994] 时钟 The Clocks

[USACO1.4] [IOI1994] 时钟 The Clocks

题目描述

考虑将如此安排在一个 3×33 \times 3 行列中的九个时钟:

|-------|   |-------|   |-------|
|       |   |       |   |   |   |
|---o   |   |---o   |   |   o   |
|       |   |       |   |       |
|-------|   |-------|   |-------|
    A           B           C

|-------|   |-------|   |-------|
|       |   |       |   |       |
|   o   |   |   o   |   |   o   |
|   |   |   |   |   |   |   |   |
|-------|   |-------|   |-------|
    D           E           F

|-------|   |-------|   |-------|
|       |   |       |   |       |
|   o   |   |   o---|   |   o   |
|   |   |   |       |   |   |   |
|-------|   |-------|   |-------|
    G           H           I

目标要找一个最小的移动顺序将所有的指针指向 1212 点。下面原表格列出了 99 种不同的旋转指针的方法,每一种方法都叫一次移动。
选择 191 \sim 9 号移动方法,将会使在表格中对应的时钟的指针顺时针旋转 9090 度。

移动方法 受影响的时钟
1 ABDE
2 ABC
3 BCEF
4 ADG
5 BDEFH
6 CFI
7 DEGH
8 GHI
9 EFHI

例子:

9 9 12       9 12 12        9 12 12        12 12 12        12 12 12
6 6 6   5 -> 9  9  9   8 -> 9  9  9   4 -> 12  9  9   9 -> 12 12 12
6 3 6        6  6  6        9  9  9        12  9  9        12 12 12

但这可能不是正确的方法,请看下文。

输入格式

输入三行,每行三个正整数,表示一个时钟的初始时间,数字的含意和上面第一个例子一样。

输出格式

单独的一行包括一个用空格分开的将所有指针指向 1212 点的最短移动顺序的列表。

如果有多种方案,输出那种使其连接起来的数字最小的方案。(举例来说 5 2 4 6<9 3 1 15\ 2\ 4\ 6 < 9\ 3\ 1\ 1)。

9 9 12
6 6 6
6 3 6 

4 5 8 9

提示

题目翻译来自NOCOW。

USACO Training Section 1.4