aboutsummaryrefslogtreecommitdiff
path: root/2025/06/puzzle-1.awk
diff options
context:
space:
mode:
Diffstat (limited to '2025/06/puzzle-1.awk')
-rwxr-xr-x2025/06/puzzle-1.awk20
1 files changed, 20 insertions, 0 deletions
diff --git a/2025/06/puzzle-1.awk b/2025/06/puzzle-1.awk
new file mode 100755
index 0000000..4bb4338
--- /dev/null
+++ b/2025/06/puzzle-1.awk
@@ -0,0 +1,20 @@
+#!/usr/bin/awk -f
+
+NR == 1 {
+ for (i = 1; i <= NF; i++)
+ xs[i, 2] = 1
+}
+
+!/[+*]/ {
+ for (i = 1; i <= NF; i++) {
+ xs[i, 1] += $i
+ xs[i, 2] *= $i
+ }
+}
+
+/[+*]/ {
+ for (i = 1; i <= NF; i++)
+ total += xs[i, $i == "+" ? 1 : 2]
+}
+
+END { print total }