Я пытаюсь выучить Haskell и пытаюсь создать функцию, которая принимает список списков и группирует подсписок эквивалентными суммами. Это не домашнее задание.
import Data.List
let x = [[1,2],[2,1],[5,0],[0,3],[1,9]]
let groups = groupBy (\i j -> sum i == sum j) x
Я получаю этот вывод в GHCi:
[[[1,2],[2,1]],[[5,0]],[[0,3]],[[1,9]]]
Я получаю [[1,2],[2,1]]
группируя вместе, но не с [0,3]
. ]. Почему это?
Я подозреваю, что мне нужно использовать map
, но я не могу заставить его работать.