From e7c9108b95e39d7ea5a29ae06d619c4727f11027 Mon Sep 17 00:00:00 2001 From: Thomas Voss Date: Fri, 29 Oct 2021 23:02:39 +0200 Subject: Initial commit --- 2015/06/puzzle-2.awk | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) create mode 100755 2015/06/puzzle-2.awk (limited to '2015/06/puzzle-2.awk') diff --git a/2015/06/puzzle-2.awk b/2015/06/puzzle-2.awk new file mode 100755 index 0000000..97ae1f8 --- /dev/null +++ b/2015/06/puzzle-2.awk @@ -0,0 +1,17 @@ +#!/usr/bin/env -S awk -f + +function setlights(val) +{ + for (i = from[1]; i <= to[1]; i++) { + for (j = from[2]; j <= to[2]; j++) { + if (!(val == -1 && lights[i][j] == 0)) + lights[i][j] += val + } + } +} + +$1 == "toggle" { split($2, from, ","); split($4, to, ","); setlights(2) } +$2 ~ /on|off/ { split($3, from, ","); split($5, to, ",") } +$2 == "on" { setlights(1) } +$2 == "off" { setlights(-1) } +END { for (i = 0; i <= 999; i++) for (j = 0; j <= 999; j++) count += lights[i][j]; print count } -- cgit v1.2.3