Guest User

Untitled

a guest
Oct 12th, 2018
84
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.26 KB | None | 0 0
  1. import Data.List (group)
  2.  
  3. data RunLength a = Single a | Multiple Int a deriving (Show, Eq)
  4.  
  5. encodeModified :: Eq a => [a] -> [RunLength a]
  6. encodeModified = map runLength . group
  7. where runLength [x] = Single x
  8. runLength xs@(x:_) = Multiple (length xs) x
Add Comment
Please, Sign In to add comment