module Exercise_8 where import Data.List import Data.Function (on) import Data.Ord (comparing) import Control.Arrow (first) {-WETT-} shoefa :: (Num a, Ord a) => [a] -> Int shoefa = max 0 . pred . length . group . map signum . filter (0 /=) {-TTEW-}