• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:数独の次の1手がわかりません(再))

数独の求解方法についての質問

このQ&Aのポイント
  • 数独の次の1手がわかりません(再)。左上の小領域に1と3の双子が、右下の小領域に2と9の双子があることはわかりましたが、最後の決め手が見つかりません。
  • 手詰まりになり仕方がないので、「最上段にとにかく1を入れる」ことを考え、左から、3、5,6番目に可能性があり、順に試したところ、3,5番目ではダメで、6番目に1を入れたら解けました。
  • 解けるには解けたのですが、私が気がついていないもっと効率のよい方法がないのかと思い、お尋ねしています。

質問者が選んだベストアンサー

  • ベストアンサー
  • htms42
  • ベストアンサー率47% (1120/2361)
回答No.5

#4です。方法の確認をやってみます。 あなたがやられた方法 手順1  A-C の(1,3)のペアーについて可能性を試す。     ⇒1ではだめなことが分かったので3であることが確定した。 手順2  A-Cを3にして手を進めて行ったが行き詰った。この段階でA-E,A-Fに1が入っていた。     そこでこの2つについてまた試してみた。     ⇒A-E に1を入れた場合、ダメであることが分かった。A-Fの1が確定した。 手順3  A-F を1として手を進めて行くと終わりまで行くことができた。 これは結局、2つの可能性について調べるという仮定法を二回使っていることになります。 #4に書いた私の方法では 手順1は同じです。手順2も途中まで同じです。 あなたがA-E,A-Fにある1について調べたのと同じようなことをI-Eにあるペアー(6,8)についてやっています。仮定法を2回やっているということでは同じなのです。違いは手順の数です。 あなたがA-Eの1を排除することができたのは矛盾に行きついたからですからかなりのて手数を使っています。 私がI-Eにあるぺアーについてやったことは矛盾に行きつくことを目指したのではなくてE-Hにある9を候補から排除するという作業です。「2つの可能性の両方で共通に消える数字は消してしまっていい数字だ」という論理です。少ない手順で9を消すことができています。4手ぐらいで結論が出ています。少ない手順で結論が出ていますので「こういう数字の配置の時はこの数字を消すことができる」という公式になっているのです。 公式にはなくても「2つの可能性の両方で共通に消える数字は消してしまっていい数字だ」という論理は使ってもいいのです。10手でも20手でもかまいません。でも10手以下ぐらいの方がいいでしょうね。 セルの中に候補数字を全部書いておく方がいいです。 2つの可能性を調べて行く時は色を変えて2色でマークして行きます。 同じセルを通るような手順が必要です。どちらの色も付かなかった数字があれば消してしまっていい数字です。 XY-wing、井桁の論理(四角の対角線の論理)、浜田ロジック 全てこの論理に含まれてしまいます。浜田ロジックが使いにくいのは前の2つと違って手順が長い、手順の数が定まらないという点があるからです。公式にあてはめようと思わずに上に書いた「2つの可能性の両方で共通に消える数字があればその数字は消してしまっていい数字だ」という論理を使って、1つでも2つでも候補数字を減らしていこうとすればいいと思います。 どの方法を使っても論理的であることには変わりがありません。 (今だに「仮定法は論理的でない」と書いてある本が目につきます。数独、ナンプレは仮定法の論理の上に成り立っているゲームだということが分かっていないのです。)

usatan2
質問者

お礼

応答ありがとうございます。 >手順2  A-Cを3にして手を進めて行ったが行き詰った。この段階でA-E,A-Fに1が入っていた。 >    そこでこの2つについてまた試してみた。 >    ⇒A-E に1を入れた場合、ダメであることが分かった。A-Fの1が確定した。 手順2が理解できず、悩んでいてお礼遅くなりました。 最上段を A-A,A-B,A-C, A-D,A-E,A-F, A-G,A-H,A-I と記載するものと理解するとなんとなく辻褄があう気がします。 でも最上段は、A-A,A-B,A-C, B-A,B-B,B-C, C-A,C-B,C-C と記載するのですよね。 手順2は以下の書き間違いでしょうか? ---------------- 手順2  A-Cを3にして手を進めて行ったが行き詰った。  この段階でA-G, D-H,G-Fに1が入っていた。  しかし、B-B,B-Cのいずれも1が入っていなかった。     そこでこの2つについてまた試してみた。     ⇒B-B に1を入れた場合、ダメであることが分かった。B-Cの1が確定した。 ---------------- 上記の意味であれば、理解できました。 また、XY-wingの解説ありがとうございました。 なるほど、私の手順よりかなり少ない手順で9を消すことができていますね。 すばらしいです。ありがとうございます。

その他の回答 (5)

  • htms42
  • ベストアンサー率47% (1120/2361)
回答No.6

#5です。 >でも最上段は、A-A,A-B,A-C, B-A,B-B,B-C, C-A,C-B,C-C と記載するのですよね。 そうですね。 私の勘違いでした。 混乱させてしまって申し訳ありません。 ついでに もしはじめにB-Cに1を入れてみるということをやっていれば一発で解けてしまうということが起こります。解くのに難しい論理、公式を使う必要はありません。すっと解けるのです。「どうしてその場所に1を入れると解けるということが分かったのか」と言われると「入れてみたら解けた」としか答えようがないのですがとにかく解けるのです。 数独、ナンプレにはこういうことがあるのです。 解けたからよかったと思う人もいるでしょうがどうもしっくりしないと思う人もいるでしょう。 あなたも多分しっくりしないと思う方の人ですよね。 「仮定法は論理的でない」と主張している人はこのことを指して言っているのだろうと思います。 でもこういうことが起こるということと仮定法が「論理的であるか」「論理的でないか」は別のことです。 方法としての「仮定法」は「可能性の排除」を目指しています。「場合をつくす」という手順を前提としている限り論理的です。場合をつくすという作業の途中で解が見つかれば残りの作業を打ち切ってかまいません。解が一つしか存在しないという前提がある限り成り立つことです。解が1つしか存在しないことを示すことは要求されていないからです。これは数学の証明とは異なっています。数学の問題では3つの場合に分けて調べて行く時には初めに解が見つかっても残りの2つの場合を調べないといけません。3つの場合の全てで解が存在するかもしれないというのが普通だからです。 この場合でも「上の列に並んでいる3つの1(A-C,B-B,B-C)を順番に試すつもりだった、左から順番にではなくて右から順番に試そうとしたら最初で解に行きついた、解が見つかったから残りの作業は打ち切った」と言えば論理的になるのです。 ただこのようにして選んだ1が解にスムースにむすびつくのか、途中にまたハードルが出てくるのかはやって見ないと分からないものです。その意味では偶然だということができますが「論理的である」、「論理的でない」という判断とは別のものです。 幾何の証明で「補助線を引く」という方法を使うことがあります。 うまい補助線を引くと証明が驚くほど簡単になります。 補助線を使っての簡単な証明を書いたとしても「論理的ではない」とか「証明が不完全である」とか言われることはありません。その補助線をどのようにして見つけたかを証明の中で示さなければいけないという事もありません。証明としては完全なのです。 でも別の立場として「その補助線が存在するということはどうしてわかるのか」、「見つけることができなければ証明できないのか」、「証明が少し長くなってもいいから補助線を使わない方法が知りたい」、というような意見が出てくるもまた納得できることです。 「仮定法」は「上手い補助線に頼らずにごてごてと解に近づいて行く方法」に対応するものです。 解法集に載っている難しい公式を使わなくても解に行きつくことができるのです。 その場合、「矛盾に行きつけば可能性を排除することができる」という論理だけでなくて、「2つの可能性で調べた時、同じセルの同じ数字が候補から排除されるということが起こればその数字は消してしまっていい数字である」という論理も使うと作業がかなり楽になります。どのペアーを選ぶかによってどこまで進むことができるか変わりますがたいていの選択で一歩前進が期待できます。作業が無駄になりません。(xy-wingにはこの論理が使われているというのは#3に書きました。)

usatan2
質問者

お礼

度重なる応答、ありがとうございます。 >私の勘違いでした。 やはりそうでしたか。安心しました。 >解けたからよかったと思う人もいるでしょうがどうもしっくりしないと思う人もいるでしょう。 >あなたも多分しっくりしないと思う方の人ですよ 同感です。おっしゃるとおり私は、しっくり来ないタイプです。 質問にも書いたとおり、最上段6番目(B-C)に1を入れると一発なのも承知して質問しています。 >この場合でも「上の列に並んでいる3つの1(A-C,B-B,B-C)を順番に試すつもりだった、左から順番にではなくて右から順番に試そうとしたら最初で解に行きついた、解が見つかったから残りの作業は打ち切った」と言えば論理的になるのです。 「解ける」の意味は人それぞれですが、私は、ほかの2種類の可能性を否定しないと、「唯一の解」であることが確認できないので「解いた」気になれません。 ですから、私は最上段3、5、6の3箇所をすべて試して6番目だけが解であることを確認しました。 少なくとも、最上段5番目(B-B)のチェックに関しては、htms42さん御紹介のxy-wingを使うことで、大幅に少ない手順で矛盾を引き出せることがわかり、大助かりでした。 ありがとうございました。

  • htms42
  • ベストアンサー率47% (1120/2361)
回答No.4

#3に書かれているお礼を見ました。 2つの可能性があって、片方が駄目だということが分かればもう一つが解です。 でも解でない方が消えたからと言って後がすっと行くとは限りません。 それが問題の難しさになるのだと思います。 ところがこの問題では2つの可能性を調べるという手順の代わりに代わりに3つの可能性を調べるという風に調べる場合の数を増やすことによってかえって選択した後の手順が易しいものに変わっています。面白い結果だと思います。 私も同じところで行き詰りました。 あちこちに双子ができています。それが動かないのですね。 私は候補の数字を全てセルに書き込んでいますがあなたもやっておられますか。 ここから先に進むために私が使ったのは F-Hには69のどちらかが入る H-Eには89のどちらかが入る I-Eには68のどちらかが入る という数字の配置です。 この3つの数字の組は同じ行、列、ブロックに入っている場合は3国同盟と言われるものになります。 その数字の組が異なるブロックに入っていて四角形を作っています。四角形を作る4つのセルの残りはE-Hのセルです。7か9が入ります。 こういう数字の配置の場合、E-Hのセルには9が入ることができないのです。3つのセルのかなめになっているI-Eのセルに6または8を入れてみて下さい。どちらの場合でもE-Hのセルの9は消えてしまいます。7が確定します。これで終わりまで行くことができます。 これは解法集の中では「XY-wing」という名前で載っているものです。 ところがあなたがやられた様にB-Cを1と決めるとこの7が簡単に決まるのです。 A-Cにある1を消すことのできるもっと手順の短い方法があるのだろうかと思って調べたのですが見つかりませんでした。

  • Ishiwara
  • ベストアンサー率24% (462/1914)
回答No.3

> 3,5番目ではダメで、6番目に1を入れたら解けました。 3番目がダメと分かったところで未知の5番目に1を入れてみるのは損のような気がします。 3番目に1を入れるのがダメ、ということは、そのマスには3が入ることが決定なのですから、それを決めて、あとは、そこから下へ行くのが得策だと思います。そうすると、もう逆戻りすることなく、最後まで解けます。

usatan2
質問者

お礼

応答ありがとうございます。 >3番目がダメと分かったところで未知の5番目に1を入れてみるのは損のような気がします。 >そうすると、もう逆戻りすることなく、最後まで解けます。 実は、3番目に3を入れて進めましたが、それでも、 583 000 700 946 725 831 127 000 650 439 562 178 058 130 400 012 408 503 004 050 017 271 004 305 005 000 000 で行き詰まり、相変わらず最上段の1の入る場所は未解決だったのです。 そこで、(この状態で)最上段の5番目、6番目に1を入れて試したところ6番目で回答に至りました。 ということは、はじめの状態から「最上段の6番目に1が入る」ことが、わかるもっと賢い方法があるのではと期待しています。なかなか名案が思いつきませんがね

  • hrsmmhr
  • ベストアンサー率36% (173/477)
回答No.2

すみません Bブロック→Dブロック です

  • hrsmmhr
  • ベストアンサー率36% (173/477)
回答No.1

数独は順調に数を埋められるのも楽しいですが 詰まったときになんとかして打開策を見つけるのも楽しいものです ただ手詰まりの時に出せる打開策などというのは あなたのいう理論的解法ではなく おそらく多少の先読みの数が変わるかもしれませんが、 深く読んで得られる仮定法みたいな解法しかないのではないでしょうか? この問題のこの局面は、まさにかなり深い手詰まり状態だと思います 前の質問でのNo.3の答えを考えた時に考えたことは いろいろ入りうる数字を絞っていく上で Bブロックが一番埋まりやすいというのが分かったので 他で答えが出たとしても、ここを突いていけばとりあえずは答えになるかと 思って深追いして見たのです 方法というには不確かすぎますが そういう嗅覚みたいなものも一つの方法かと思います 論理でないので、後々に活用できないかもしれませんが…

usatan2
質問者

お礼

応答ありがとうございます。 >そういう嗅覚みたいなものも一つの方法かと思います 同感です。 この問題は、やはり、かなり難問なんでしょうかね。

関連するQ&A

専門家に質問してみよう