![見出し画像](https://assets.st-note.com/production/uploads/images/17928756/rectangle_large_type_2_e2c23fb4e29e16d12c73267816838168.jpeg?width=1200)
【懐かしパズル】15ゲーム
自分はパズルが好きです。要領さえ理解できれば、無意識に手が動いているんじゃないかと思うくらいに熱中してしまいます。例えば、15ゲームなんかがそれです。ルールは簡単で、正方形の盤に1~15の書かれたタイルを無造作に並べて一つだけ穴を作ります。開いた穴はタイルをスライドさせて移動させるためのスペースで、試行錯誤して順番通りに並べるというパズルです。
子供の頃に家にあったので、暇があればやっていました。横並べに飽きると縦に並べてみたり、斜めクロスさせてみたりと色々やったことを覚えています。今では下のようなナンバーパズルという名前のスマホアプリでそれを楽しむことができるようです。
4×4の大きさだけではなくて、3×3~8×8という大きさを自由に選ぶことができます。クリア時間を計測してくれるので、タイムアタックをするという遊び方もできます。3×3や4×4などのタイルの少ないものは初期配置が完成に近い状態で始まることがままあるので、ベストタイムは運に左右される印象を受けました。
なので、このナンバーパズルの腕というか、純粋な上手さを測ろうとすると、何回か(たとえば5回、10回とか)こなした時の平均タイムを記録すればいいような気がします。ちなみに自分のベストタイムはこんな感じです。
3×3 2秒
4×4 15秒
ーーー ここより上は初期配置次第で凄い短いタイムが出る ーーー
5×5 35秒
6×6 1分 7秒
7×7 1分51秒
8×8 2分14秒
自分はどうも3×3と5×5と7×7が苦手です。その理由は最後の2段分の並べ方に苦戦するせいでしょう。例えば、7×7の場合は1段目に1~7、2段目に8~14・・・というように並べていきますよね。
6段目 |36 37 38 39 40 41 42|
7段目 |43 44 45 46 47 48 あな|
最後の6,7段目は上の通りに並べるわけですが2段分のスペースだけでこの並び方を作るのを初めてやろうとした時はめちゃくちゃ難しかったです。せっかく並べた5段目を崩してみたりしましたが結局頭がこんがらがってダメになりました。今でこそコツを掴んで簡単にできるようになりましたが、慣れるまでは顔を真っ赤にしながら並べ替えてました。
ここでは自分が悪戦苦闘の末にたどり着いた簡単なやり方をご紹介したいと思います。一言で言うと、最後の6,7段目はそれぞれ1段分ずつを一塊として見れば扱いやすいです。具体的に説明しましょう。先に6段目36~42までの並びを作ったあとに全体を反時計回りに回転させて下の様に左側に寄せます。
6段目 |40 41 42 48 45 43 46|
7段目 |39 38 37 36 あな 44 47|
こうすると、7段目に入るタイルが右半分に偏るので、そこで残った43~48を次の通りに並べなおします。
6段目 |40 41 42 48 47 46 45|
7段目 |39 38 37 36 あな 43 44|
最後にこれらをキャタピラのように時計回りにぐるぐると回転させれば目的の並びが完成させられます。コツは2段分14タイルのスペースを左8+右6に区切って、先に左8(6段目+末尾48)を作っておくことです。特に、末尾48を42の隣に置いておかないと後々キャタピラができなくてタイムロスしてしまいますから注意が必要です。
このような末尾をくっつけるという面倒くさい作業は5×5、7×7などの奇数辺だけにしかありません。4×4や8×8などの偶数辺なら2段分のスペースを半々に分けられるので気持ち的に楽になります。例えば、8×8の場合は2段分16スペースを左8+右8に分けて、先に7段目49~56を左半分に寄せてしまいます。
7段目 |53 54 55 56¦63 62 61 60|
8段目 |52 51 50 49¦あな 57 58 59|
こうすると、残りの8段目のタイルは(7段目のタイルと干渉することなく)右半分のスペースで気にせず並び変える作業ができるのでわざわざ最初から末尾63を56の隣に置く必要がないわけです。奇数辺と偶数辺の違いはこんな感じで、少し面倒くさい奇数辺の方が難易度は上だと思いますし、今でも自分は奇数辺が苦手です( 'ω' ; )
「ためになるわ」と感じて頂ければサポートを頂ければ幸いです。よろしくお願いいたします。