Haskell,
pasted
on Jul 11:
|
halve (xs) | length xs `mod` 2 == 0 = (take n xs, drop n xs)
| otherwise = (take (n+1) xs, drop (n+1) xs)
where n= length xs `div` 2
main = do
putStrLn $ show $ halve [1,2,3,4]
putStrLn $ show $ halve [1,2,3]
|
Output:
|
([1,2],[3,4])
([1,2],[3])
|
|