ナンバープレース・サポート293

  ABC DEF GHI
1
2
3
4
5
6
7
8
9
                 

メッセージ:

       

「ナンバープレース・サポート」は、初級者を対象にパズルを解く手助けをします。 「数字シート」ボタンを押すと空きマス目に配置することができる数字群を表示し、 「ヒント」ボタンでは次に配置することのできるマス目の位置と理由を表示します。ナンバープレースの問題は、 新聞・雑誌や Web 等に出題されているもの (上級者向けの問題を除く) を利用ください。私もよく利用する 「ナンバープレース滝野川」 さんのホームページには、たくさんの良質な問題があります。 なお、最初に表示されている問題は、「数のパズル読本」(秋山 久義著、新紀元社) の 18 頁に掲載されているものです。

  • 数字をマス目に入力するには、横に並んでいる数字の中から目的の数字をクリックします。選択した数字は、背景が白で表示されます。数字を選択したら、次に入力したいマス目をクリックします。 なお、右端の空白は、マス目を元の空欄に戻す場合などに使います。

  • 数字の入力には、「問題入力」と「解答入力」の2つのモードがあります。 問題入力モードで入力した数字は青色で表示され、解答入力モードでは黒色で表示されます。 左端のボタンを押すと、モードが反転します。なお、解答入力モードから問題入力モードに切り替えると、 すでに入力されている黒色の数字が消去されます。

  • リセットボタンは、モードによって異なる働きをします。 解答入力モードでは黒色の数字が消去され、問題入力モードではすべての数字が消去されます。

  • ヒントボタンを押したとき以外のメッセージは、次の2つです。
     • 変更できません! -- 解答入力モードで青色の数字を変更しようとしたときに表示
     • すでに配置済みです! -- 配置しようとした数字が縦・横・エリア内に存在するときに表示

  • 別の問題で利用する場合は、問題入力モードでリセットボタンを押します。 マス目がすべてクリアされたら、新しい問題の数字を配置してください。新しい問題の入力が終わったら、 配置に誤りがないか確認して、左端のボタンを押して解答入力モードに移行してください。


「ナンバープレース・サポート」は、 「数字シート」と「ヒント」ボタンを使わなくても利用することができます。実力アップのためにも、 ボタンを押す前によく考えるようにしてください。

数字シートボタンについて
 数字シートボタンは問題入力モードでは機能せず、解答入力モードでのみ使うことができます。 数字シートボタンを押すと、以下のように空きマス目に配置できる数字を表示します。 それぞれの数字は、四角の点で表します。1列目の左から 1, 2, 3、2列目を 4, 5, 6、3列目を 7, 8, 9 に割り当てています。なお、数字シートが表示されている状態でボタンを押すと数字シートが消去されます。

     ■ ■     1 2 3
    ■  ■     4 5 6
     ■ ■     7 8 9

数字シートがあまり目立ちすぎないように、実際は薄い色を使用しています。 薄い赤を配置できる数字、薄い黒を配置できない数字にしています。 上の例の場合は、1, 5, 7 が配置できる数字、2, 3, 4, 6, 8, 9 が配置できない数字になります。 なお、数字の点がすべて黒の数字シートがある場合、どこかに誤りがあるので見直してください。

ヒントボタンについて
 ヒントボタンは問題入力モードでは機能せず、解答入力モードでのみ使うことができます。 ヒントボタンを押すと、次の何れかのメッセージを表示します。なお、xx でマス目位置 (1A, 2B, ... etc) を表示し、配置される数字自体は表示しません。

  • xx: 8数字配置済
  • xx: XX他配置不可 (XXは、縦列、横列、エリア内、の何れか)
  • xx: その他のパターン
  • 見つかりませんでした

「8数字配置済」は、xx が属する横列、縦列、エリア内 (3 x 3 ブロック) に8種類の数字が配置済みであることを意味します。横列、縦列、エリア内の配置済みの数字を数えて、 使われていない数字を見つけてください。

「XX他配置不可」は、横列、縦列、エリア内が別々に対象になります。 xx の属するXXの残りの空きマス目に特定の数字を配置できないため、xx に特定の数字が配置できることを意味します。この場合は、それぞれの空きマス目に入る数字を列挙する等して、 xx に配置できる数字を決定することになります。

「その他のパターン」は、上記2つに該当しないケースに表示されます。 この場合は、難しいケースが多いのでじっくりと考えてみてください。なお、いくかの例を挙げますので、 参考にしてください。

「見つかりません」は、白旗を掲げて降参したときに表示されます。 上級者向けの問題には難しいケースが多くあり、すべてのケースに対応することができません。 初級・中級者の問題に限って利用ください。

メッセージの優先順位は、「8数字配置済」 → 「XX他配置不可」 → 「その他のパターン」 → 「見つかりません」になります。なお、マス目位置の探索は、 1A → 1B → ... → 9H → 9I の順番で行っています。

 ABCDEF GHI
1           
2           
3           
4      3    
59  8 7  654
6           
7           
8           
9           

XX他配置不可の例
 横の5列には、3つの空きマス目 (5B, 5D, 5F) があります。 それぞれの空きマス目に配置できる数字は、次のようになります。

    5B -- 1, 2, 3
    5D -- 1, 2
    5F -- 1, 2

横列の空きマス目のうち、3 を配置できるのが 5B のみです。 この場合は "XX" に "横列" が入り、メッセージ欄に "5B: 横列他配置不可" と表示します。

 ABCDEF GHI
1           
2           
3           
4    9     3
59  8 7  654
6    654    
7           
8 1         
9           

その他のパターン例1
 横の5列には、3つの空きマス目 (5B, 5D, 5F) があります。 それぞれの空きマス目に配置できる数字は、次のようになります。

    5B -- 2, 3
    5D -- 1, 2, 3
    5F -- 1, 2, 3

中央エリアの 4E と 4F に 3 を配置することができないので、5D または 5F に 3 が配置されることになります。したがって、5B に 3 が入らないので、残っている 2 が配置されることになります。

 ABCDEF GHI
193  8 6  72
2 4  7 1    
3 7  3 2  5 
4    9 3  4 
54   2 5   6
6    4 7    
7 64 5 8  9 
8    1 4    
982  679  34

その他のパターン例2 (最初に表示されている問題の途中に出現)
 横の5列には、5つの空きマス目 (5B, 5C, 5E, 5G, 5H) があります。 それぞれの空きマス目に配置できる数字は、次のようになります。

    5B -- 1, 8, 9
    5C -- 1, 3, 7, 8, 9
    5E -- 1, 8
    5G -- 1, 3, 7, 8, 9
    5H -- 1, 8

5E と 5H に配置できる数字は 1 と 8 の2つだけなので、他の空きマス目 (5B, 5C, 5G) に 1 または 8 を配置できません。したがって、5B に 9 を配置することができます。

 ABCDEF GHI
1           
2 6         
3      8    
4         6 
53    2     
6        48 
7      6    
8 8    4    
9           

その他のパターン例3
 横の5列には、7つの空きマス目 (5B, 5C, 5D, 5F, 5G, 5H, 5I) があります。 それぞれの空きマス目に配置できる数字は、次のようになります。

    5B -- 1, 4, 5, 7, 9
    5C -- 1, 4, 5, 6, 7, 8, 9
    5D -- 1, 4, 5, 6, 7, 8, 9
    5F -- 1, 5, 7, 9
    5G -- 1, 5, 7, 9
    5H -- 1, 5, 7, 9
    5I -- 1, 5, 7, 9

6 を配置できるのが 5C と 5D、8 も同様で、5C と 5D には 6 と 8 以外は配置できません。5C と 5D から 1, 4, 5, 7, 9 を除外すると、4 を配置できるのは 5B のみとなります。

 ABCDEF GHI
1           
2           
3           
4    9     3
59  8 7  654
6    654    
7           
87 4 5    38
96 9 8     5

その他のパターン例4
 その他のパターンの例1と例2の組合わさったパターンです。例1の図とは異なり 8B の 1 がないので、5B に配置できる数字は 1 と 2 の2つに限定されます。次に、縦の B 列に着目します。B 列で必要な個所のみ記すと、配置できる数字は以下のようになります。

    5B -- 1, 2
    8B -- 1, 2
    9B -- 1, 2, 3

これで、例2のパターンが適用できます。したがって、9B に 3 が配置できることになります。

第2メッセージ欄とシート更新ボタンについて
 第2メッセージ欄は、ヒントボタンを押して「その他のパターン」と表示されたときに追加の情報を表示します。 その他のパターンでサポートしているのは上記の例1、例2、例3の3つだけで、 正解が見つかるまで繰り返し適用します。例4が、繰り返し適用した例です。 追加の情報は、適用したパターンをすべて表示します。次が、その1例です。

    (T2 8D:9D)(A2 1F:2F)(A2 8D:9D)(Y1 3G:3H)(Y1 7B:7C)(T3 5G:9G)

適用したパターンは、丸括弧で囲みます。 上の例では、6回パターンを適用して正解を見つけたことを示しています。丸括弧内の最初のアルファベットが横列 (Y)、縦列 (T)、エリア内 (A) の別、次の数字がパターンの種別、その後がマス目位置になります。

「シート更新」ボタンは、第2メッセージ欄が表示されていて、 数字シートを利用しているときのみ機能します。シート更新ボタンは1回押すと1つのパターンを適用して、 数字シートを更新するとともに、第2メッセージ欄の適用したパターンの先頭に "*" を付けます。 シート更新ボタンを連続して押すことで、配置可能数字が消去される様子を見ることができます。

    *(T2 8D:9D)*(A2 1F:2F)*(A2 8D:9D)*(Y1 3G:3H)*(Y1 7B:7C)*(T3 5G:9G)

すべてのパターンの適用が終わると、第2メッセージ欄は上記の状態になります。 この時点で、数字シートは「8数字配置済」または「XX他配置不可」の状態になり、正解を見つけることができます。

( 第2メッセージ欄の表示は、 完全なものではありません。複数のパターンが適用されている場合、すべてが正解に関係しているとは限らないのです。 正解と無関係のパターンを排除したいといろいろ考えたのですが、私のプログラマーとしての腕が不足しているため、 そのままにしてあります。

  2011/08/10: 正解と無関係の適用パターンを排除しました。ただし、少し時間のかかる場合があります。)


Perl and Puzzle 出張所     メインページ: Perl and Puzzle