あいだが空いてしまった。ちょうど1週間だ。5月の連休中から Scala のエントリを1月以上も連続で更新してたのに。まぁ、別にいいんだけど。
で、今日から再開ということで Scala をやろうと思ったんだけど、事情があって Haskell だ。
数独っていうパズルがある。ナンプレともいう、マス目に 1 から 9 の数字を入れていくアレだ。暇つぶしにやってたんだけど、入門編の問題くらいはともかく、それ以上になると途端に難しくなる。向いてないのかもしれない。
ともかく、こんなのやってられねーってわけで、問題を解くプログラムを作ってみた。Haskell で。
作ったものは GitHub にあげたので見てほしい。
使い方はこんな感じ。
^o^ > type example2.txt
87
928 15
1
14 8
485
6 43
5
51 924
92
^o^ > sudoku example2.txt
431658792
928734615
675921438
147362859
392485167
856197243
284519376
513876924
769243581
問題は 9 × 9 マスに入っている数字を 9 文字 × 9 行のテキストファイルにして、sudoku プログラムにファイル名を渡してやるだけ。
「数独 難問」でググって出てきた問題でもあっという間に解ける。ああ、気持ちいい。