diff options
author | June McEnroe <june@causal.agency> | 2022-12-05 10:07:05 -0500 |
---|---|---|
committer | June McEnroe <june@causal.agency> | 2022-12-05 10:07:05 -0500 |
commit | 50bb480e3672cb6c32d4b63c7f629b78c558157b (patch) | |
tree | 3003e7f15505e7c4ff9035c83af18f24ba43c9c0 | |
parent | Solve day 4 part 2 (diff) | |
download | aoc-50bb480e3672cb6c32d4b63c7f629b78c558157b.tar.gz aoc-50bb480e3672cb6c32d4b63c7f629b78c558157b.zip |
Solve day 5 part 1
-rw-r--r-- | 2022/day05.awk | 27 |
1 files changed, 27 insertions, 0 deletions
diff --git a/2022/day05.awk b/2022/day05.awk new file mode 100644 index 0000000..599b1a4 --- /dev/null +++ b/2022/day05.awk @@ -0,0 +1,27 @@ +{ + sub("^ ", "[.] "); + gsub(" ", " [.]"); +} +/^\[/ { + for (i = 1; i <= NF; i++) { + x = substr($i, 2, 1); + if (x == ".") continue; + a[i] = a[i] x; + } +} +/^move/ { + count = $2; + from = $4; + to = $6; + for (i = 1; i <= count; i++) { + x = substr(a[from], 1, 1); + a[from] = substr(a[from], 2); + a[to] = x a[to]; + } +} +END { + for (i = 1; a[i]; i++) { + printf substr(a[i], 1, 1); + } + printf "\n"; +} |