From 5c556d3bce74556e7f9ddc57170cc989d35b045a Mon Sep 17 00:00:00 2001 From: June McEnroe Date: Thu, 15 Dec 2022 20:43:17 -0500 Subject: Solve day 15 part 1 --- 2022/day15.awk | 26 ++++++++++++++++++++++++++ 1 file changed, 26 insertions(+) create mode 100644 2022/day15.awk diff --git a/2022/day15.awk b/2022/day15.awk new file mode 100644 index 0000000..0840487 --- /dev/null +++ b/2022/day15.awk @@ -0,0 +1,26 @@ +BEGIN { + FS = "[ =,:]+"; + y = 2000000; +} +function abs(x) { + return (x < 0 ? -x : x); +} +function dist(x1, y1, x2, y2) { + return abs(x1 - x2) + abs(y1 - y2); +} +{ + if ($14 == y) B[$12] = 1; + r = dist($4, $6, $12, $14); + if (abs(y - $6) <= r) { + n = r - abs(y - $6); + for (x = $4-n; x <= $4+n; ++x) { + Y[x] = 1; + } + } +} +END { + for (x in B) { + delete Y[x]; + } + print length(Y); +} -- cgit 1.4.1