初版 2001年12月 8日
2版 2003年 3月11日
by パソコン初心者
第5課題は、分断系の「ひとりにしてくれ」になった。
これだけの期間で作ったので、めちゃくちゃ手抜きである。 調べていることといったら極めて簡単である。
$ letmealone letmealone-sample.data [return] # Vol.2 No. 39 rest=64 8 2 7 6 7 5 8 3 1 4 8 5 2 7 6 4 4 7 1 2 1 3 1 5 5 3 6 3 4 2 7 2 6 5 7 8 3 4 4 1 2 1 3 1 5 8 4 8 5 8 2 4 3 1 4 7 7 3 4 5 8 6 2 6 Answer 1 rest=0 8276■5■3 1■8■2764 47■213■5 ■36■4■72 65■834■1 2■315■48 5824■1■7 7■45862■ Answer count : 1 $
詳しいことは、日曜日の勉強会(2001/12/9)の時にでも。
というところまで2001年の末に進んでいたのだが、2003年の2月になってから、 ちょっと手を入れて、機能追加した。
問題を解くだけでなく、問題を実際に作るのに役立つように工夫したのである。 現状で、出力は以下のようになっている。
問題作成途中の動作例サンプルデータ: letmealone-make.data
オプションに -g をつけると、黒の連結がどのようになっているかも分かるよう になっている。
$ letmealone letmealone-make.data # letmealone-make.data # 問題作成途中データ例 ・・・・・ ・・・・・ ・ 1 1 1・ ・・・・・ ・・・・・ ・・・・・ ・☆・☆・ ☆■1■☆ ・☆・☆・ ・・・・・ Answer count : 0 ・・・・・ ・ 2 2・・ ・ 1 1 1・ ・・・・・ ・・・・・ ・・☆・・ ・2■☆・ ☆■1■☆ ・☆☆☆・ ・・・・・ Answer count : 0 ・・・・・ ・ 2 2・・ ・ 1 1 1・ ・ 3 4 5・ ・・・・・ ・・☆・・ ・2■☆・ ☆■1■☆ ・345・ ・・・・・ Answer count : 0 ・ 4 3 5 2 1 2 2 4 3 5 1 1 1 4 2 3 4 5 1 ・・・ 4 5 ★43■2 12■43 5■1■4 23451 ・・2■5 Answer count : 0 4 4 3 5 2 1 2 2 4 3 5 1 1 1 4 2 3 4 5 1 3 5 2 4 5 Answer 1 ■43■2 12■43 5■1■4 23451 3■2■5 Answer count : 1
という感じで、なんとか動くものをでっちあげた。 実際にこれを使って問題を作ることもしてみたが、確に助かる。
何の高速化もしていないプログラムで、決して速いとは思わないが、それでも ニコリのペンパ本を、1冊10秒以下で解けるので、まあまあかなと思い、 3月9日のパズルプログラミング勉強会で説明しました。
もちろん、勉強会では、1冊1秒以下で解けるプログラムの説明もありました。