Nobuo Yamashita
nobsu****@sampo*****
2004年 2月 24日 (火) 12:02:12 JST
> 1.全部のパターンをストリームにする。(これが先のメールです。。。) > 2.1のストリームを各行の問題データにマッチするものだけフィルタリング(これが上の事例) > 3.各候補行パターンの組み合わせを生成。(未着手) > 4.3の組み合わせ候補が列の問題データと一致するものを抽出(未着手) 1からやるのはちょっと無駄が多いかもしれませんね。 2のフィルター済みのものから作るのはそんなに難しくないと思います。 3の生成が上手く遅延されて、4を上手く工夫して枝刈りをやる必要があり そうですね。 SICP のストリームを単純に全解探索に利用するだけでは、関数適用が遅延されない ので、結構計算がすすんでしまいます。工夫が必要でしょうね。 nqueens の場合でもSICPのストリームを単純に SICP にある全解探索プログラムに 適用しただけでは、最初の1解だけが欲しいというときに使えるものにはなりません でした。 Hack, hack, hack! --nobsun