- 締切済み
C言語についての質問です。
unixにてプログラムを作成しているのですが困っています。 4×4のマス目の数字を入力後、1~4の数字を各行、各列、2×2の小領域で 各数字を丁度一個配置する、数独のプログラムです。 何からすれば良いのか分かりません、ソースとその解説をお願いします。
- みんなの回答 (1)
- 専門家の回答
みんなの回答
noname#39970
回答No.1
数独のルールは判ってる? 2x2を1つのブロックとして 1~4(2x2の最大値)を代入していく 代入する時に全体(4x4)の縦横を見て入れる事が出来るか判定(空白であり縦横に同じ数字が無い) 入れられないなら(ブロック内での)次の升へ移り代入できるか判定 を繰り返す それを4つのブロック(4x4は2x2が2x2=4ブロック)繰り返す 人間ならこういう手順で作る、というのをまず書き出したら良い。 それを実現できなそうならどこが実現できないのかを探し、そこを実現できそうな手順に分解(展開とも)する。を繰り返す というのをやると何をしたらいいのか判るのでは?