Comment detail

リストの並び (Nested Flatten)

書いてみたら意外とすっきり。

1
2
3
(defun check (list)
  (loop for (x . xs) on list always
    (or (every (lambda (y) (< x y)) xs) (every (lambda (y) (> x y)) xs))))

Haskell の方がきれいに書けますね。

1
2
3
4
import Data.List

check (x:xs) = (all (< x) xs || all (> x) xs) && check xs
check []     = True

Index

Feed

Other

Link

Pathtraq

loading...