nobsun です.

>  いきなりオフトピになってしまうのですが、ちょうどmixiの「数学」コミュニティで
> 「数独が取りうる表の数は何通りあるか」というトピックが盛り上がっていたので
> http://mixi.jp/view_bbs.pl?id=2739588)、これを計算するプログラムを書いて
> みようか、と思っていたところでした。 なので、記事を読んだときはびっくりでした。

いぜん数えようとしたことがあります.

で,すでに数えた人がいるようです.

http://www.shef.ac.uk/~pm1afj/sudoku/

>  試しに、記事にあった数独ソルバそのままで
> 
>     sudoku $ replicate 9 $ replicate 9 vacant
> 
> などとバカ正直にやったんですが、ghcで最適化オプションつけても、半日では終わり
> ませんでした(^^;
> (当たり前、と言うか、入力に1列埋めるだけでもだいぶ違いますよね、たぶん)
> 
>  現実に計算できる程度までチューニングしてみようか、とか思ってたりしますが、
> 難しいかな…

sudoku $ replicate 9 $ replicate 9 vacant

ではアルゴリズムが素朴すぎますし,同等解(回転,反転で同一と見做せる解)
も全部数えてしまうので,現在世界最速のコンピューターでも半日じゃ全解
列挙は無理でしょう...

http://www.shef.ac.uk/~pm1afj/sudoku/sudgroup.html

による.本質的に異る解ならなんとかなる? ^^;

--nobsun

--
ML: haskell-jp / quickml.com
使い方: http://QuickML.com/