6.解析


4段階に分けてあります。
プログラム的な分類であり、人間の感覚に則したものではありません。

 メニュー[解析]-[簡易]
 メニュー[解析]-[通常]
 メニュー[解析]-[単独 仮定]
 メニュー[解析]-[複数 仮定]

 メニュー[解析]-[# 無視]

「# 無視」のチェックを外すと、数値未定の三角「# 」を解析前に検出するようになります。


・簡易
単純に縦横の制限だけで、入りうる数字が1個に定まるマスを確定していく
これで解ききれる問題は多い

・通常
実際に全ての分割パターンをマスに当てはめ、入りうるか確かめていく
これでほとんどの問題が解ける


以下は背理法を使うので、時間がかかる場合があります。
大きな問題や別解の多い問題だと特に。

終わらない場合は途中でキャンセルしてください。


・単独 仮定
1段階だけ先読み(背理法)をして、1個にしぼれるマスを探す

作者の知る範囲では、全ての問題がこれで解けた
しかし、カックロで背理法を使わねば解けないとは難しすぎるのではないか

・複数 仮定
無限に先読み(背理法)をし、解を探す

理論的には、これで解けない問題はない
もし解けなければ、複数解がある

注:ここまでを必要とする問題がないため、動作確認が不十分です。
バグがあるかもしれません。

戻る







補足&雑談(読まなくていいですから)

この解析機能を作ったのは20年も前で、作者がまだ30歳頃のことです。
今の衰えた頭では、こんな面倒なモノはとても作れません。
作者もう50歳?
スゲー、完全におっさんだ。
そう言ってやるな。人生って、過ぎればあっという間らしいぞ。
もう10年たったのか、いつの間に……って感じで。
頭の衰えはマジな話でして、ガチのアルゴリズムは正直つらい……とのことで。
職業プログラマーには35歳定年説というのがありますが……
まあ、それは象徴的な与太話だとは思うけどね。
若い時のガムシャラな集中力やパワーは出ないんだろうな。
知識の新規取得も滞って、実作の面で見劣りしてくるのは仕方ないのかな。
それに、さすがに仕事上の責任も重くなって、そうそう遊んでいられないという……
そうなの?

そうなんですよ。
作者の近況は最後に少し言及するかもですが、まあする必要もないんですが。
いい年なんだから、真面目に仕事しろって。
仕事をほったらかして遊んでちゃダメだろ。
ほったらかしてはいないんだけどね。
人生を賭けてまではしていなかった、ということで。
便利な言い方があるなあ。
まあ、そういう人は多そうだけどね。
さて閑話休題、「# 無視」のチェックは入っているのが初期値です。
バージョンアップでそのように改善しました。
したんだ。
後から不便に気付いたってやつ?
その通りです。
解析は作成中にしてみることが多いので、最初からチェックが便利。
最初から気付けよって話ではあるね。
動作確認が足りないんじゃないの。
ここを作ったのは10年も昔だし、経験不足もあったんですよ。



戻る