day01: prettier solution

This commit is contained in:
shu 2020-12-01 09:13:22 +01:00
parent ca044c956a
commit 36ccd6f974

View File

@ -1,11 +1,13 @@
import Control.Arrow
import Control.Monad
main :: IO () main :: IO ()
main = do main = do
input <- map read . lines <$> readFile "input" input <- map read . lines <$> readFile "input"
print (day1a input) print $ day1 input 2
print (day1b input) print $ day1 input 3
day1a :: [Int] -> Int day1 :: [Int] -> Int -> Int
day1a input = head [x * y | x<-input, y<-input, x+y==2020] day1 input n =
snd . head . filter ((== 2020) . fst) $
day1b :: [Int] -> Int map (sum &&& product) $ replicateM n input
day1b input = head [x * y * z | x<-input, y<-input, z<-input, x+y+z==2020]