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

[答え]

b1j1a1(3手)

 ┏━┳━┳━┓   ┏━┳━┳━┓   ┏━┳━┳━┓
 ┃7┃8┃3┃   ┃7┃2┃3┃   ┃7┃2┃3┃
 ┣━╋━╋━┫ b1 ┣━╋━╋━┫ j1 ┣━╋━╋━┫
 ┃6┃2┃5┃ → ┃6┃1┃5┃ → ┃1┃5┃6┃
 ┣━╋━╋━┫   ┣━╋━╋━┫   ┣━╋━╋━┫
 ┃4┃1┃9┃   ┃4┃8┃9┃   ┃4┃8┃9┃
 ┗━┻━┻━┛   ┗━┻━┻━┛   ┗━┻━┻━┛
                        ↓a1
                     ┏━┳━┳━┓
                     ┃1┃2┃3┃
                     ┣━╋━╋━┫
                     ┃4┃5┃6┃
                     ┣━╋━╋━┫
                     ┃7┃8┃9┃
                     ┗━┻━┻━┛

ヒントの続きで、空白のマスを全部埋めます。(下図)
この時点では、どの行または列も(0以外の)移動すべき手数は揃っていません。

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

手数は全体的に0と1が多いので、k行b列の2を0か1にする方向で考えてみます。
2つ上に移動して0にする場合(b2の操作)だと、逆にb列の他の2つの1が、ともに2になってしまい、意味がありません。なので0でなく1にするよう、移動は1つだけにしてみます。つまりb1。するとb1後は下図のようになります。

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

これでj行の横移動数が揃ったので、j1を実行。するとa列の縦移動数が1に揃うので最後にa1を実行して、完成。

コメントを残す

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

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