Tidying
authorNeil Smith <neil.git@njae.me.uk>
Sun, 4 Dec 2016 12:12:27 +0000 (12:12 +0000)
committerNeil Smith <neil.git@njae.me.uk>
Sun, 4 Dec 2016 12:12:27 +0000 (12:12 +0000)
advent04.hs

index 5ad205e9add09859cb00fc9d9c6fc5514349d4d5..fb2839ece8accc5aadc20d24d091f5ce39bb9e18 100644 (file)
@@ -2,7 +2,6 @@ import Data.List (last, intersperse, sortBy, intercalate, isInfixOf)
 import Data.List.Split (splitOn)
 import Data.Char (isLetter, ord, chr)
 import qualified Data.Map.Lazy as Map
-import Data.Tuple (swap)
 
 data Room = Room { name :: String
                  , sector :: Int
@@ -26,7 +25,7 @@ part1 rooms = do
 
 part2 :: [Room] -> IO ()
 part2 rooms = do 
-    print $ filter (\sn -> isInfixOf "north" (snd sn)) sectorNames
+    print $ fst $ head $ filter (\sn -> isInfixOf "north" (snd sn)) sectorNames
     where 
         validChecksum room = (checksum room) == makeChecksum (name room)
         validRooms = filter (validChecksum) rooms
@@ -37,7 +36,6 @@ part2 rooms = do
 parseLine :: String -> Room
 parseLine line = Room {name=name, sector=sector, checksum=checksum}
     where components = splitOn "-" line
-          -- name = concat $ intersperse "-" $ reverse $ tail $ reverse components
           name = intercalate "-" $ reverse $ tail $ reverse components
           sector = read $ head $ splitOn "[" $ last components
           checksum = filter (isLetter) $ last components