Tidying
authorNeil Smith <NeilNjae@users.noreply.github.com>
Mon, 11 Dec 2023 11:20:51 +0000 (11:20 +0000)
committerNeil Smith <NeilNjae@users.noreply.github.com>
Mon, 11 Dec 2023 11:20:51 +0000 (11:20 +0000)
advent11/Main.hs

index cfdbe0ea871162939205b963a3eb5f9c018ea9d2..2a94423835cf52ea4f13e91684513259c38ae9e3 100644 (file)
@@ -22,15 +22,13 @@ main =
       print $ part2 galaxies
 
 part1, part2 :: Galaxies -> Int
-part1 galaxies = allDistances $ expandGalaxies galaxies 2
-
-part2 galaxies = allDistances $ expandGalaxies galaxies (10^6)
+part1 = allDistances . expandGalaxies 2
+part2 = allDistances . expandGalaxies (10^6)
 
 allDistances :: Galaxies -> Int
 allDistances gs = case S.minView gs of
   Nothing -> 0
-  Just (g, gs') -> (S.foldl' (
-    addDist g) 0 gs) + allDistances gs'
+  Just (g, gs') -> (S.foldl' (addDist g) 0 gs) + allDistances gs'
   where addDist g1 acc g2 = acc + distance g1 g2
 
 distance :: Position -> Position -> Int
@@ -38,8 +36,8 @@ distance g1 g2 = abs dr + abs dc
   where (V2 dr dc) = g1 ^-^ g2
 
 
-expandGalaxies :: Galaxies -> Int -> Galaxies
-expandGalaxies galaxies scale = galaxies''
+expandGalaxies :: Int -> Galaxies -> Galaxies
+expandGalaxies scale galaxies = galaxies''
   where er = emptyRows galaxies
         galaxies' = expandRows galaxies er scale
         ec = emptyCols galaxies'