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

[答え]

k1c2k2a2(4手)

 ┏━┳━┳━┓   ┏━┳━┳━┓   ┏━┳━┳━┓
 ┃4┃2┃6┃   ┃4┃2┃6┃   ┃4┃2┃3┃
 ┣━╋━╋━┫ k1 ┣━╋━╋━┫ c2 ┣━╋━╋━┫
 ┃7┃5┃1┃ → ┃7┃5┃1┃ → ┃7┃5┃6┃
 ┣━╋━╋━┫   ┣━╋━╋━┫   ┣━╋━╋━┫
 ┃3┃8┃9┃   ┃8┃9┃3┃   ┃8┃9┃1┃
 ┗━┻━┻━┛   ┗━┻━┻━┛   ┗━┻━┻━┛
                        ↓k2
           ┏━┳━┳━┓   ┏━┳━┳━┓
           ┃1┃2┃3┃   ┃4┃2┃3┃
           ┣━╋━╋━┫ a2 ┣━╋━╋━┫
           ┃4┃5┃6┃ ← ┃7┃5┃6┃
           ┣━╋━╋━┫   ┣━╋━╋━┫
           ┃7┃8┃9┃   ┃1┃8┃9┃
           ┗━┻━┻━┛   ┗━┻━┻━┛

ヒントに書いた考え方で、まずj行c列の2を二個の1にする方法を考えてみます。

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

それには、他の二つの0と同時に2移動させます。2移動することにより0→1に、2→0になる、というわけです。ちょうどj行がその条件を満たしていますから、まずj2とします。これでj行c列の2は消え、j行a列とb列の0から1ができました。
次に、k行a列の1をそれに揃えるためにa1でj行に移動して……
という具合に、j2→a1→j1と進めると(下図)、

   ┏━┳━┳━┓   ┏━┳━┳━┓   ┏━┳━┳━┓
   ┃02┃00┃02┃   ┃00┃00┃02┃   ┃00┃00┃02┃
 j2 ┣━╋━╋━┫ a1 ┣━╋━╋━┫ j1 ┣━╋━╋━┫
 → ┃01┃12┃10┃ → ┃11┃12┃10┃ → ┃02┃00┃01┃
   ┣━╋━╋━┫   ┣━╋━╋━┫   ┣━╋━╋━┫
   ┃12┃00┃00┃   ┃01┃00┃00┃   ┃01┃00┃00┃
   ┗━┻━┻━┛   ┗━┻━┻━┛   ┗━┻━┻━┛

となって、縦方向のみ1が二個、2が二個残り手詰まりになってしまいます。

なので、もう一つの方法、k行a列の1から2を二個作る方向で考えると、先ほどと同様、ちょうどk行が条件を満たしていますから、k1とします。
これで出来た二個の2に、j行c列の2を合わせて……と、あとは下図のように進めていけばうまく解に到達します。

   ┏━┳━┳━┓   ┏━┳━┳━┓   ┏━┳━┳━┓  
   ┃02┃00┃02┃   ┃02┃00┃00┃   ┃02┃00┃00┃  
 k1 ┣━╋━╋━┫ c2 ┣━╋━╋━┫ k2 ┣━╋━╋━┫ a2
 → ┃02┃00┃21┃ → ┃02┃00┃00┃ → ┃02┃00┃00┃ →
   ┣━╋━╋━┫   ┣━╋━╋━┫   ┣━╋━╋━┫  
   ┃20┃20┃02┃   ┃20┃20┃22┃   ┃02┃00┃00┃  
   ┗━┻━┻━┛   ┗━┻━┻━┛   ┗━┻━┻━┛

コメントを残す

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

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