- ベストアンサー
パズルを作る
先日、学校でこんな課題が出されました。 「5×5の盤面の何カ所かにライトが点灯している(下の図で黒く示した部分)。 0 1 2 3 4 0□□□□□ 1□■■□□ 2□■□□□ 3□□□□□ 4□□□□□ ここで(x,y)=(2,2)の場所のライトを点灯させる。すると、この部分を中心に上下左右1マスのライトの点灯/消灯が反転する。斜め方向のライトは影響を受けない。 0 1 2 3 4 0□□□□□ 1□■□□□ 2□□■■□ 3□□■□□ 4□□□□□ これを繰り返し、すべてのライトを点灯させたら終わり。 上記のプログラムを作成せよ。どの場所のライトを点灯/消灯させるかをキー入力させて盤面を更新し、終了条件(すべて点灯)を満たすまでループするようにする。最初にどこが点灯しているかという「問題」は各自で適当に作成してよい。」 というものなのですが、はっきり言って手も足も出ません。どなたか詳しい方、どうか作成方法を教えて下さい。ちなみに使っているパソコンのOSはFreeBSD 4.9-RELEASEで、コンパイラはgcc for version 2.0です。
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
その他の回答 (2)
- cherry_moon
- ベストアンサー率36% (37/102)
回答No.3
- επιστημη(@episteme)
- ベストアンサー率46% (546/1184)
回答No.2
お礼
お礼がたいへん遅くなって申し訳ありません。 今更かもしれませんが、ポイントをつけさせていただきます。 どうか御無礼をお許しください。