日別アーカイブ: 2022-01-03

ナンプレへの入り口

ナンプレのルール

ナンプレのルールは以下の通りです。

➊タテ一列、9マスに1~9の数字が1個ずつ入る
➋ヨコ一列、9マスに1~9の数字が1個ずつ入る
➌区切られた3×3のすべての正方形ブロックにも1~9の数字が1個ずつ入る

数独(ナンバープレース・Number Place,ナンプレ)の研究開始

ナンプレが注目されて久しいですが、最近になって興味が強まりました。集中的に研究を開始してまだ3週間でありわからないことだらけです。超初心者向け問題を解いていたら複数の正解に出会いました。早めの体験は珍しいと言われておりラッキーでした。

次の図、黒字で示した以下のような問題です。1つの解答は緑字で示されます。6つのマスを一気に赤字の数字に交換しても正解に繋がりました。

研究の方向性と目指す先

新聞や雑誌で定期的にナンプレを取り上げ読者へ濃厚な情報を提供しています。そのほか、ネット上には基本的な解法などを先駆者が解説しています。当サイトでは紙媒体では表現しにくい時間差、色彩、音声などを加えて新機軸を開拓したいと考えています。

解法については書籍やネット上の既存の解法を最大限に応用しながらも後追いに終始することはやりません。ナンプレを研究し、アルゴリズムを確立しプログラミングに反映させてプログラミング学習に役立たせることが研究の目指す終局目標です。

プログラミングとの親和性

記事を書くに当たり、3×3、9×9のマスに注目してマスの位置を確定します。表現方法を上図に示しました。横方向の並びを行、縦方向の並びを列、3×3のボックスをブロックと呼ぶことにします。行、列、ブロックは0~8に割り振り、ブロックは丸囲み数字を使いました。プログラミング言語は開発に便利なHTMLを採用しています。


参照サイト:”https://fastcoding.jp/blog/all/jquery/html-css-javascript/”

HTMLでもCやphpに劣らぬ実行速度を実現できます。要素番号は0を初期値にし8まで値が存在します。9×9(81)個のマスは0~80で表現されることがあります。初期値が1から始まるexcelやWordと少し異なりますがHTMLプログラミングとの親和性を大切にしています。余談ですが81マスでは関連性の深い将棋の棋譜表現方法とも異なります。

次回の予定

文章にしたことで頭の中がスッキリしました。次回からは解法のあらましなどを含めてこれまでに分かったこと、多くの解析記事の傾向などをまとめ、地道に挑戦した結果を挙げていきます。

解法のあらまし

次回