2008-09-29から1日間の記事一覧

続・compact-number-list他

畳み込みを使ったコードが出てきてたのを見て、CLで書いてみた。 (defun compact-number-list (x) (reduce #'(lambda(n r) (let ((c (car r))) (if (eql (1+ n) (or (safe-car c) c)) `((,n .,(or (safe-cdr c) c)) ,@(cdr r)) `(,n ,@r)))) `(,@x nil) :fro…