aboutsummaryrefslogtreecommitdiff
path: root/2021/10/puzzle-2.sed
diff options
context:
space:
mode:
authorThomas Voss <thomasvoss@live.com> 2021-12-10 07:34:52 +0100
committerThomas Voss <thomasvoss@live.com> 2021-12-10 07:34:52 +0100
commitc95723952a479ed35347cbd196dc1986be932732 (patch)
treec61f601be61861df8eb42e4e60498c3137eca3d5 /2021/10/puzzle-2.sed
parentf67d7c9bc53a40edbc5cc86397c0569f1c2b445f (diff)
Add a sed/sh solution
Diffstat (limited to '2021/10/puzzle-2.sed')
-rw-r--r--2021/10/puzzle-2.sed18
1 files changed, 18 insertions, 0 deletions
diff --git a/2021/10/puzzle-2.sed b/2021/10/puzzle-2.sed
new file mode 100644
index 0000000..887386c
--- /dev/null
+++ b/2021/10/puzzle-2.sed
@@ -0,0 +1,18 @@
+:top
+s/()//
+s/\[\]//
+s/{}//
+s/<>//
+t top
+
+/[])}>]/d
+
+:loop
+s/\([(\[{<]*\)($/s = s * 5 + 1;\1/
+s/\([(\[{<]*\)\[$/s = s * 5 + 2;\1/
+s/\([(\[{<]*\){$/s = s * 5 + 3;\1/
+s/\([(\[{<]*\)<$/s = s * 5 + 4;\1/
+t loop
+
+s/^/s = 0;/
+s/$/s/