advent-of-code/2023/15/Main1.hs
2023-12-18 13:18:18 -08:00

12 lines
336 B
Haskell

import Data.Bits ((.&.))
import Data.Char (ord)
import Data.List (foldl')
import Data.List.Split (splitOn)
getHash :: String -> Int
getHash = foldl' (\acc x -> (acc + ord x) * 17 .&. 255) 0
main :: IO ()
main = print . sum . map getHash . splitOn "," . concat . lines
=<< readFile "data.txt"