ルーピック・キューブ (2)

(Loopicルール)

  1. 一度に、いずれか一つの行または列のマスをスライドさせることができる。
  2. 行は右から左に、列は下から上に、1マスまたは2マス動かす。
  3. 行または列の数字が、その並びのまま、その行または列の中で循環する。

(例題その他、詳しくは《ルーピック・キューブ》(1)を参照してください)

[問題(2)]

上記(Loopicルール)に従って操作し、下の左図から右図にするための最小手を考えてください。解答は、操作の順に「i1b2c1」のように書き、行(i~k)あるいは列(a~c)の操作が連続する部分はアルファベット順に書くものとします。

    a b c
   ┏━┳━┳━┓   ┏━┳━┳━┓
  i┃7┃5┃3┃   ┃1┃2┃3┃
   ┣━╋━╋━┫   ┣━╋━╋━┫
  j┃8┃6┃1┃ → ┃4┃5┃6┃
   ┣━╋━╋━┫   ┣━╋━╋━┫
  k┃4┃2┃9┃   ┃7┃8┃9┃
   ┗━┻━┻━┛   ┗━┻━┻━┛


(ヒント)

そのマスの数が目的の位置まで移動するのに必要な手数を、横方向,縦方向の順に各マスごとに書き出してみましょう。例えばi行a列の7が、目指す位置(k行a列)に行くまでには、左に0、上に1移動する必要があるので「01」という具合です。
(同じようにして下図の空白のマスを埋めてみてください)

   ┏━┳━┳━┓
   ┃01┃02┃00┃
   ┣━╋━╋━┫
   ┃ ┃ ┃ ┃
   ┣━╋━╋━┫
   ┃ ┃ ┃ ┃
   ┗━┻━┻━┛

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください