P90
(de queens (N) (let (R (range 1 N) L (copy R) X L) (recur (X) # Permute (if (cdr X) (do (length X) (recurse (cdr X)) (rot X) ) (or (seek # Direct check for duplicates '((L) (member (car L) (cdr L))) (mapcar + L R) ) (seek '((L) (member (car L) (cdr L))) (mapcar - L R) ) (println L) ) ) ) ) )
http://picolisp.com/wiki/?99p90
10jul10 | abu |