Tweaks
authorNeil Smith <neil.git@njae.me.uk>
Tue, 15 Dec 2020 18:08:41 +0000 (18:08 +0000)
committerNeil Smith <neil.git@njae.me.uk>
Tue, 15 Dec 2020 18:08:41 +0000 (18:08 +0000)
advent09/src/advent09.hs

index d1c32d45e909110c5d3815551af76760394eb3e0..0fd8dbf97b909d76431224b9a177aaab7d66db11 100644 (file)
@@ -9,7 +9,6 @@ main =
         let firstInvalid = part1 nums
         print firstInvalid
         print $ part2 firstInvalid nums
         let firstInvalid = part1 nums
         print firstInvalid
         print $ part2 firstInvalid nums
-        -- print $ head $ part2 nums
 
 part1 nums = fst $ head $ filter (not . valid) $ slidingWindow 25 nums
 
 
 part1 nums = fst $ head $ filter (not . valid) $ slidingWindow 25 nums
 
@@ -20,7 +19,8 @@ valid (target, window) = not $ null [(x, y) | x <- window, y <- window, x + y ==
 
 
 part2 target nums = (maximum section) + (minimum section)
 
 
 part2 target nums = (maximum section) + (minimum section)
-    where section = head $ filter (sumsToTarget target) $ subStrings nums
+    where section = head $ filter (sumsToTarget target) $ subStrings smallNums
+          smallNums = dropWhileEnd (>= target) nums
 
 -- subStrings :: [a] -> [[a]]
 subStrings = (concatMap inits) . tails
 
 -- subStrings :: [a] -> [[a]]
 subStrings = (concatMap inits) . tails