一大堆的福利之【USACO題庫】The Clocks
阿新 • • 發佈:2019-02-11
考慮將如此安排在一個 3 x3 行列中的九個時鐘:
|-------| |-------| |-------| | | | | | | | |---O | |---O | | O | | | | | | | |-------| |-------| |-------| A B C |-------| |-------| |-------| | | | | | | | O | | O | | O | | | | | | | | | | |-------| |-------| |-------| D E F |-------| |-------| |-------| | | | | | | | O | | O---| | O | | | | | | | | | |-------| |-------| |-------| G H I
目標要找一個最小的移動順序次將所有的指標指向12點。
下面原表格列出了9種不同的旋轉指標的方法,每一種方法都叫一次移動。
選擇1到9號移動方法,將會使在表格中對應的時鐘的指標順時針旋轉90度。
移動方法 | 受影響的時鐘 |
1 | ABDE |
2 | ABC |
3 | BCEF |
4 | ADG |
5 | BDEFH |
6 | CFI |
7 | DEGH |
8 | GHI |
9 | EFHI |
Example
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
[但這可能不是正確的方法,請看下面]
PROGRAM NAME: clocks
INPUT FORMAT
第1-3行: | 三個空格分開的數字,每個數字表示一個時鐘的初始時間,3,6,9,12。 數字的含意和上面第一個例子一樣。 |
SAMPLE INPUT (file clocks.in)
9 9 12
6 6 6
6 3 6
OUTPUT FORMAT
單獨的一行包括一個用空格分開的將所有指標指向12:00的最短移動順序的列表。
如果有多種方案,輸出那種使的連線起來數字最小的方案。(舉例來說5 2 4 6 < 9 3 1 1)。
SAMPLE OUTPUT (file clocks.out)
4 5 8 9