Fix AOC day 9 pt 1
This commit is contained in:
@@ -5,6 +5,7 @@ import haxe.Constraints;
|
||||
import haxe.ds.Option;
|
||||
import haxe.Int64;
|
||||
import haxe.Int64Helper;
|
||||
import hx.strings.ansi.Ansi;
|
||||
#if day4
|
||||
import year2021.Day4;
|
||||
#end
|
||||
|
@@ -55,8 +55,9 @@
|
||||
(day 9
|
||||
(load "day9.kiss")
|
||||
(assert (= 4 (count (lowPoints "src/year2021/inputs/day9-example.txt"))))
|
||||
(let [lp (lowPoints "src/year2021/inputs/day9.txt")]
|
||||
(doFor =>key val lp (print "$key : $val"))))
|
||||
// (highlightLowPoints "src/year2021/inputs/day9.txt")
|
||||
(print (apply + (for =>_ height (lowPoints "src/year2021/inputs/day9.txt") (+ 1 height))))
|
||||
)
|
||||
(dayTodo 10)
|
||||
(dayTodo 11)
|
||||
(dayTodo 12)
|
||||
|
@@ -42,7 +42,24 @@
|
||||
(cond
|
||||
((> adjHeight height)
|
||||
(pointsToCheck.remove adjKey))
|
||||
((< adjHeight height)
|
||||
((<= adjHeight height)
|
||||
(set isLow false))))
|
||||
(when isLow (dictSet lowPoints key height))))
|
||||
lowPoints))
|
||||
lowPoints))
|
||||
|
||||
(function :Void highlightLowPoints [file]
|
||||
(let [writer (Ansi.writer (Sys.stdout))
|
||||
m (lowPoints file)
|
||||
lines (Util.readLines file)
|
||||
&mut isRed false]
|
||||
(doFor [y line] (enumerate lines)
|
||||
(doFor [x height] (enumerate (line.split ""))
|
||||
(if (m.exists (mapKey [x y]))
|
||||
(unless isRed
|
||||
(writer.fg RED)
|
||||
(set isRed true))
|
||||
(when isRed
|
||||
(writer.fg WHITE)
|
||||
(set isRed false)))
|
||||
(writer.write height))
|
||||
(writer.write "\n"))))
|
Reference in New Issue
Block a user