X-Git-Url: https://git.njae.me.uk/?a=blobdiff_plain;f=src%2Fadvent15%2Fadvent15.hs;fp=src%2Fadvent15%2Fadvent15.hs;h=6ee03c04cf0c6a6b53cefd98d10cc954cd772c3a;hb=df0593061898494af0b96bf6a620d8efdda2fe0c;hp=7cec0d024da9784b39d3fc7a7d6dcafe4950d2cb;hpb=cfe831809e32c1b0c9746eb9939fe0a2cd9a1d37;p=advent-of-code-17.git diff --git a/src/advent15/advent15.hs b/src/advent15/advent15.hs index 7cec0d0..6ee03c0 100644 --- a/src/advent15/advent15.hs +++ b/src/advent15/advent15.hs @@ -24,7 +24,7 @@ streamA = stream generatorA generatorAStart streamB = stream generatorB generatorBStart generator :: Word64 -> Word64 -> Word64 -> Word64 -generator divisor factor n = fromIntegral $ fromIntegral n * factor `rem` divisor +generator divisor factor n = n * factor `rem` divisor toWord16 :: Word64 -> Word16 toWord16 = fromIntegral @@ -33,5 +33,4 @@ stream :: (Word64 -> Word64) -> Word64 -> [Word16] stream gen n0 = map toWord16 $ drop 1 $ iterate gen n0 filteredStream :: Word16 -> [Word16] -> [Word16] -filteredStream f str = filter (\n -> n .&. f == 0) str - +filteredStream f str = filter ((== 0) . ( .&. f)) str