マルチスレッド版数独自動生成ソフトC++コードを題材とする超初心者のためのVisual Studio C++講義
第13章 様々な魔方陣の作成および自動生成
第7話 第1話の謎に答える


これの実現は恐ろしいほど簡単です。

const size_t n = 5;を

const size_t n = 7;

と変更するだけです。nを11にすれば11次完全魔方陣になります。

11の場合は少しだけ整形が必要なだけです。

ここまでついてきた皆さんにとってとても簡単な課題です。

というわけで、皆さん自身で整形してください。


さて、第1話の謎に答えずに来ましたが、

いよいよその謎に答えましょう。

5次魔方陣なら5!×5! = 14400通りの魔方陣ができるはずなのに、

数学者は本質的は同じ魔方陣だと考えます。


2つは確かに見かけが異なります。

0→1、4→0、3→4、1→2、2→3

で素材は確かに変わっています。

でも素材が変わっても数字の位置関係は全く同じです。

2つは構造が同じなのです。

ただ、



2つを別の魔方陣と考えてもよいのです。

数独を例に考えて見ましょう。

雑誌の数独でも私の数独自動生成ソフトが生成する数独でも何でもよいのですが、



この数独について、数字の移動を行います。

1→2、2→3、3→4、4→5、5→6、6→7、7→8、8→9、9→1と変えてみましょう。


雑誌や本などに2つの問題が並んでいたら

おそらく数独やナンプレのファンは怒りだしてしまうでしょう。

数独ファン・ナンプレファンにとって2つは同じ問題です。

まったく同じ考え方で解けてしまうからです。

数独ファン・ナンプレファンは仮定法を邪道な方法と見なします。

仮定法とは言い換えると背理法で数学で認められています。

証明するときに結論を否定すると矛盾がおきるので命題は正しいと証明するあの背理法です。

数独とは純粋な論理パズルです。

であれば、数独ファンでない方は数学で認められている仮定法=背理法を認めてもよいだろうと考えます。

私が開発した数独自動生成ソフトが作り出す数独はいかなる局面でも必ずどこかの空欄は1つの数字に確定できる数独しか生成しません。

ですからこの空欄は3,7,9の可能性があるからまず3を仮定して矛盾したら3を捨てるということをやる必要はありません。

どこかの空欄は必ず一つの数字に確定できるようになっているからです。

私も数独ファンに1人なので、仮定法を解法として認めていません。

数独ファンは理詰めという方法で解きます。

どこかの空欄は論理的に考えていけば必ず一つの数字に確定できるので、

論理的に追及していってその空欄を探し出すのです。

私の開発した数独自動生成ソフトは南信州新聞と下野新聞に無料的提供されており、

両新聞社合わせれば自動生成ソフトによって週に11題は掲載されています。

そして、南信州新聞においは解き方6個の内の1つを私は紹介しました。

そうしたら、読者からすごい反響がありました。

今まで数独1題も解けなかったけれど、私の紹介した方法を使ったら欄がするする埋まり、

人生で初めて解けたとか、他の5つの方法も是非紹介してほしいとか、という声が多数寄せられました。

私が仮定法を認めない最大の理由は、理詰めで解いた時の方が圧倒的に成感があるからのです。

消しゴムで消す必要がないので新聞紙も破れることのないし、短時間で解けます。

ちょっと断線が続きますが、上の2つが同じ考え方で解けることを説明します。

南信州新聞に私が紹介した方法を私はライン排除法とよんでいます。

同じ行・同じ列に同じ数字が入っていいけないというルールを視覚化しただけのものです。


左図は2を入れてはいけないところに黄色が塗ってあります。左図は3を入れはいけないところに色が塗ってあります。

そして、赤い囲いのブロックに注目するのです。

左図はブロック一番左で一番上の欄に2が入ることが決定します。

右図はブロック一番左で一番上の欄に3が入ることが決定します。

空欄で黄色が塗ってないところがブロックの一番左で一番上の欄だけだからです。

左図で言えばそこ以外2の行き先はありません。右図ではそこ以外3の行き先はありません。

確かに素材は変わっていますが、同じ考え方で解けることがわかります。

ですから、左図と右図は同じ問題なのです。素材が変わっていても構造(配置)が全く同じだからです。

ですが、2つの問題が1年の間隔が置かれて新聞に掲載されたとしたら誰も怒る人はいません。

1年前に同じ考え方で解ける数独が掲載されていたことに気が付く人はいないでしょう。

数学者は同一問題と見るかもしれませんが、趣味ですから楽しければよいのです。

ただ、2つの問題が空間的な間隔または時間的な間隔を置かずに
出題されたらクレームは仕方がないことはわかりますね。

はっきり言って



が同じか異なるかは定義の問題なんです。

数学者以外は異なる魔方陣だと言っても何も問題はないですね。

定義の問題では身も蓋もないなら目的が異なれば異なると考えてもよいでしょう。







第13章第6話へ 第13章8話へ

本講義トップへ