diff options
-rw-r--r-- | h27.hs | 3 |
1 files changed, 2 insertions, 1 deletions
@@ -5,7 +5,8 @@ combination _ [] = [] combination c (x:xs) = (map ((x:).fst &&& snd) (combination (c-1) xs)) ++ (map (fst &&& (x:).snd) (combination c xs)) group :: [Int] -> [a] -> [[[a]]] -group [n] xs = map ((:[]).fst) (combination n xs) +group [] _ = [[]] +-- group [n] xs = map ((:[]).fst) (combination n xs) group (n:ns) xs = concatMap (\(comb,rest) -> map (comb:) (group ns rest)) (combination n xs) group' [] = const [[]] |