2017-07-14 2 views
2

注:これは宿題に関する質問ではありません。与えられた規則で次のグリッドを解くことは可能ですか

これはプログラミングの質問であると考えることができます。答えは解決策があるかどうかです。

私は数日前に友人と話していましたが、簡単なパズルゲームを解決するように頼んでいました。ゲームは数独のようなもので、10分後に彼はあきらめて、解決策はないと私に言った。

ゲームはこのように動作します:空白の9x9のグリッドを考える

、あなたの目的は、色(赤、青、緑)の各列となるよう、行、および9 3のそれぞれと、それを埋めるためにあります×3のサブグリッドは、赤色3色、青色3色のみを含む。

ルール:

  1. 各行/列/ 3x3のサブグリッドはわずか3赤、3青色、緑色3を含まなければなりません。
  2. いいえ3と同じ色が任意の行/列に互いに横に表示することができる(例えば、RRRBGBGBGは可能ではないが、RRGGBRGBBは可能である)question..hereに依然として興味が誰に

が追加されルール。

  1. 3x3の四角は繰り返せません。解決策はあり

    :今では@PavelPájaHalbich

質問から困難になるだろうか?

+0

123が決してすべて3隣接、456が決して隣接しない、789が決してすべて3隣接であるような、sudokuへの解決策はありますか?もしそうなら、そのスドクと色を見てください123赤、456青と789緑 –

+0

これは、[バイナリパズル](http://www.binarysudokupuzzle.com/rules-binary-puzzle/)の3進版と同じです – harold

+0

@haroldありがとうございました、そのようなものが既に存在するかどうか疑問に思っていました:) –

答えて

2

私が正しく理解していれば、これは有効な解決策ですよね?提案余分なルールで

Solution

+0

私が望んでいたよりも面白いです。 – harold

+0

@haroldまあ、これは簡単でした。しかし、3)3x3の四角形を繰り返すことはできません。今それは難しくなるだろう:) –

+0

よく。私は質問が興味深いと思った、明らかにそうではなかった。 : –

2

"3x3の正方形を繰り返すことはできません"、この作品:

1 1 2|1 2 3|2 3 3 
1 2 3|1 2 3|1 2 3 
2 3 3|2 3 1|1 2 1 
----------------- 
1 1 2|1 2 3|2 3 3 
2 2 3|2 3 1|3 1 1 
3 3 1|3 1 2|1 2 2 
----------------- 
2 1 1|2 3 1|3 3 2 
3 2 2|3 1 2|3 1 1 
3 3 1|3 1 2|2 1 2 

"の行に同じなし3" を適用していない対角線とantidiagonalsへ:

1 1 2|1 2 3|2 3 3 
1 2 3|1 2 3|1 2 3 
3 2 3|2 3 1|1 2 1 
----------------- 
1 3 1|1 2 2|3 3 2 
2 1 2|2 3 3|1 1 3 
3 2 3|3 1 1|2 1 2 
----------------- 
3 1 1|2 3 1|2 3 2 
2 3 1|3 1 2|3 2 1 
2 3 2|3 1 2|3 1 1 
+0

ええ、私は後で、これがベースパターンのいくつかのバリエーションで再び解決できることに気づきました。 –

+0

@PavelPájaHalbichちょうど不思議なことに、rule2が対角線に適用されれば、それは何か変わるでしょうか? –

+0

@theaxis私は間違っているかもしれませんが、おそらく(誰か、私が間違っていると証明してください:))。ルール1をOKにして、左上隅にある順列を想像してみてください。今度は、他の四角形を塗りつぶす必要があります。これは、基本パターンの他の順列だけです。ルールをステップごとにフルフィルすることで、いつでも勝てます。 **しかし、あなたは実際にはNeproceduralプログラミングを使ってそれを証明することができます。 ** Prolog **、** Lisp **または** Scheme **でプログラムを書く場合(私はこれを最初にお勧めします)。あなたはそこにルールを書いて、解決策を求めます。 –

関連する問題