RosettaCodeData/Task/Greatest-subsequential-sum/Haskell/greatest-subsequential-sum-1.hs
Ingy döt Net db842d013d A-M baby
2013-04-10 21:29:02 -07:00

10 lines
287 B
Haskell

import Data.List (inits, tails, maximumBy)
import Data.Ord (comparing)
subseqs :: [a] -> [[a]]
subseqs = concatMap inits . tails
maxsubseq :: (Ord a, Num a) => [a] -> [a]
maxsubseq = maximumBy (comparing sum) . subseqs
main = print $ maxsubseq [-1, -2, 3, 5, 6, -2, -1, 4, -4, 2, -1]