summaryrefslogtreecommitdiff
path: root/H17.hs
blob: fa26f35fac743ae6c5dc59c8de2d8c92ce71d07a (plain)
1
2
3
4
5
6
7
8
9
10
split :: [a] -> Int -> ([a],[a])
split xs c = splitHelper [] xs c
    where
        splitHelper pre nxt 0 = (reverse pre, nxt)
        splitHelper pre (x:nxt) c = splitHelper (x:pre) nxt (c-1)

split' (x:xs) c | c>0 =
    let (pre,nxt) = split' xs (c-1)
        in (x:pre,nxt)
split' xs _ = ([],xs)