10 lines
300 B
Haskell
10 lines
300 B
Haskell
|
import AoC
|
||
|
|
||
|
import qualified Data.Set as S
|
||
|
import Data.Set (Set)
|
||
|
|
||
|
main = runAoC ((fmap . fmap) S.fromList . splitOnEmptyLines) part1 part2
|
||
|
where part1 = countSetsFolded S.union
|
||
|
part2 = countSetsFolded S.intersection
|
||
|
countSetsFolded f = sum . map (S.size . foldr1 f)
|