projects
/
advent-of-code-23.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Done day 6
[advent-of-code-23.git]
/
advent05
/
Main.hs
diff --git
a/advent05/Main.hs
b/advent05/Main.hs
index 002b8f58e802504820a20a9eeb585570a958e8d7..5dab7c10137b0ab821b956ab50a43d9c2e5571b0 100644
(file)
--- a/
advent05/Main.hs
+++ b/
advent05/Main.hs
@@
-54,7
+54,6
@@
useRule (Rule (Iv rl rh) d) (Iv xl xh) = (newResults, newVals, newRules)
newVals = filter legalInterval [Iv (max xl (rh + 1)) (max xh rh)] -- input above rule
newRules = filter legalRule [Rule (Iv (max (xh + 1) rl) (max xh rh)) d] -- rule above input
newVals = filter legalInterval [Iv (max xl (rh + 1)) (max xh rh)] -- input above rule
newRules = filter legalRule [Rule (Iv (max (xh + 1) rl) (max xh rh)) d] -- rule above input
-
useRules :: [Rule] -> [Interval] -> [Interval]
useRules [] vals = vals
useRules _ [] = []
useRules :: [Rule] -> [Interval] -> [Interval]
useRules [] vals = vals
useRules _ [] = []
@@
-64,7
+63,6
@@
useRules (r@(Rule (Iv rl rh) _):rs) (v@(Iv xl xh):vs)
| otherwise = newResults ++ (useRules (newRules ++ rs) (newVals ++ vs))
where (newResults, newVals, newRules) = useRule r v
| otherwise = newResults ++ (useRules (newRules ++ rs) (newVals ++ vs))
where (newResults, newVals, newRules) = useRule r v
-
legalInterval :: Interval -> Bool
legalInterval (Iv l h) = l <= h
legalInterval :: Interval -> Bool
legalInterval (Iv l h) = l <= h