Louis Reasonerがまたミスをして、昨日のn-queen問題のflatmap以下をこんな風にして書きやがったらしい。
(flatmap (lambda (new-row) (map (lambda (rest-of-queens) (adjoin-position new-row k rest-of-queens)) (queen-cols (- k 1)))) (enumerate-interval 1 board-size))
で、遅い遅いとか言ってる。Louis--。
なんで遅いのかってのがまず第一の問題なんですけど、各列のqueenの場所を決めるごとに、時間のかかるqueen-colsがボードサイズだけ呼ばれまくるのが問題なんだと思われます。
しかもqueen-colsは再帰なので、クソ遅くなるんだと思った。ていうのが答えでいいですかよくないですね、でも計算量とかはもう考えません。