From f07a21427d4d15ff5c9c98b528e83eb60867bc98 Mon Sep 17 00:00:00 2001 From: Joe Zhao Date: Thu, 19 Mar 2015 00:13:40 +0800 Subject: +26 /27 --- h26.hs | 5 +++++ h27.hs | 8 ++++++++ 2 files changed, 13 insertions(+) create mode 100644 h26.hs create mode 100644 h27.hs diff --git a/h26.hs b/h26.hs new file mode 100644 index 0000000..4497e8c --- /dev/null +++ b/h26.hs @@ -0,0 +1,5 @@ +combination :: Int -> [a] -> [[a]] +combination 0 _ = [[]] +combination _ [] = [] +combination c (x:xs) = (map (x:) (combination (c-1) xs)) ++ (combination c xs) + diff --git a/h27.hs b/h27.hs new file mode 100644 index 0000000..68efa73 --- /dev/null +++ b/h27.hs @@ -0,0 +1,8 @@ +combination :: Int -> [a] -> [[a]] +combination 0 _ = [[]] +combination _ [] = [] +combination c (x:xs) = (map (x:) (combination (c-1) xs)) ++ (combination c xs) + +group :: [Int] -> [a] -> [a] +group [] xs = [[xs]] +group (n:ns) xs = map ((combination n) . head) group (n:ns) xs -- cgit v1.2.3-70-g09d2