diff options
Diffstat (limited to '2021')
-rw-r--r-- | 2021/2.in | 1000 | ||||
-rwxr-xr-x | 2021/2.sh | 15 |
2 files changed, 1015 insertions, 0 deletions
diff --git a/2021/2.in b/2021/2.in new file mode 100644 index 0000000..b7b994b --- /dev/null +++ b/2021/2.in @@ -0,0 +1,1000 @@ +forward 8 +forward 3 +forward 8 +down 6 +forward 3 +up 6 +down 3 +down 8 +down 5 +down 1 +down 4 +up 4 +forward 7 +forward 7 +down 8 +forward 8 +forward 2 +forward 4 +forward 6 +down 2 +forward 1 +down 2 +down 6 +up 4 +forward 4 +forward 4 +down 1 +down 1 +forward 8 +down 9 +forward 4 +down 4 +forward 9 +down 9 +forward 7 +forward 4 +forward 4 +down 7 +forward 9 +up 5 +forward 7 +forward 4 +up 5 +up 6 +down 9 +forward 3 +forward 3 +forward 5 +up 3 +forward 8 +down 9 +forward 3 +forward 5 +down 2 +forward 7 +forward 8 +forward 8 +up 3 +down 9 +forward 2 +forward 5 +forward 4 +up 1 +down 3 +forward 7 +forward 4 +up 3 +down 8 +up 8 +forward 7 +forward 7 +down 2 +down 7 +forward 3 +forward 1 +down 7 +down 4 +down 9 +forward 5 +down 9 +up 8 +down 9 +down 7 +forward 2 +down 5 +down 6 +forward 3 +forward 2 +forward 3 +forward 2 +down 4 +up 1 +forward 6 +down 2 +forward 2 +down 5 +up 1 +up 8 +forward 5 +forward 6 +up 8 +down 4 +forward 4 +down 3 +forward 5 +forward 5 +forward 8 +forward 3 +up 1 +down 9 +up 4 +up 5 +down 3 +down 9 +up 6 +down 1 +down 2 +down 3 +down 6 +up 5 +forward 9 +forward 6 +forward 6 +forward 4 +forward 7 +up 6 +down 2 +down 9 +down 9 +forward 4 +down 9 +forward 2 +down 4 +down 8 +down 3 +up 1 +down 2 +down 7 +down 1 +down 5 +up 5 +forward 3 +forward 2 +down 2 +up 4 +up 9 +forward 5 +up 9 +down 9 +forward 1 +down 4 +forward 6 +down 2 +forward 7 +forward 2 +down 6 +forward 9 +down 9 +down 8 +forward 7 +down 3 +down 3 +down 5 +forward 5 +up 9 +up 5 +down 1 +forward 9 +down 3 +down 6 +forward 3 +up 4 +up 1 +down 3 +down 1 +up 6 +forward 4 +up 4 +forward 5 +down 3 +down 5 +forward 4 +down 1 +up 6 +down 5 +forward 1 +forward 6 +down 5 +forward 1 +forward 4 +forward 2 +down 1 +down 3 +down 9 +down 9 +down 8 +forward 4 +down 5 +forward 6 +up 6 +down 3 +forward 1 +down 9 +forward 4 +down 2 +up 5 +down 4 +forward 1 +forward 2 +down 6 +forward 3 +down 9 +forward 6 +forward 1 +forward 7 +up 1 +up 7 +up 2 +forward 4 +up 3 +down 4 +up 1 +down 3 +forward 1 +down 5 +up 6 +forward 6 +forward 6 +up 3 +up 2 +down 8 +down 2 +down 2 +down 7 +forward 8 +up 2 +up 2 +up 5 +down 6 +up 3 +down 9 +forward 7 +down 7 +forward 8 +forward 2 +forward 5 +up 5 +up 1 +forward 5 +up 2 +up 3 +up 2 +up 3 +down 3 +down 2 +forward 1 +up 1 +down 4 +up 8 +forward 5 +down 9 +forward 8 +up 1 +forward 7 +forward 7 +up 7 +up 6 +up 6 +down 5 +down 3 +up 4 +up 1 +down 9 +down 9 +forward 4 +down 7 +forward 2 +forward 8 +forward 1 +down 9 +forward 2 +forward 5 +up 5 +down 5 +down 6 +forward 1 +down 4 +forward 9 +up 3 +down 4 +forward 7 +forward 1 +forward 3 +forward 6 +down 1 +forward 3 +up 5 +up 6 +down 3 +forward 5 +forward 8 +forward 4 +down 9 +forward 2 +forward 4 +down 8 +forward 6 +down 7 +up 7 +forward 1 +down 8 +forward 5 +forward 7 +up 3 +forward 7 +forward 2 +up 5 +forward 3 +down 4 +up 5 +down 6 +up 6 +forward 6 +up 1 +up 7 +up 8 +forward 4 +down 6 +down 8 +up 8 +down 2 +forward 3 +forward 9 +down 9 +down 6 +down 2 +up 4 +forward 5 +forward 6 +forward 5 +down 5 +forward 5 +down 2 +down 9 +down 3 +down 4 +forward 2 +forward 7 +down 7 +down 2 +down 4 +down 8 +up 6 +down 7 +forward 2 +up 6 +forward 6 +down 4 +up 8 +forward 1 +up 2 +forward 6 +forward 7 +down 2 +down 4 +down 3 +down 2 +forward 5 +down 4 +forward 6 +forward 6 +down 8 +forward 7 +forward 1 +forward 1 +forward 4 +forward 7 +forward 8 +down 2 +forward 9 +up 7 +forward 1 +down 1 +forward 2 +forward 2 +up 4 +forward 3 +down 1 +down 4 +down 3 +forward 8 +forward 8 +forward 9 +forward 4 +down 6 +up 6 +up 7 +up 7 +down 1 +up 1 +up 9 +up 7 +down 9 +forward 4 +up 8 +down 5 +up 3 +down 2 +forward 4 +forward 6 +up 7 +up 2 +down 5 +down 3 +down 9 +forward 1 +down 1 +down 6 +down 3 +forward 9 +down 3 +up 6 +up 4 +up 6 +down 6 +up 7 +down 5 +up 4 +up 3 +up 3 +up 2 +forward 1 +forward 5 +forward 8 +down 2 +up 9 +forward 6 +forward 8 +up 3 +down 3 +forward 7 +forward 4 +down 7 +up 2 +down 1 +down 5 +forward 8 +down 6 +down 2 +down 9 +down 5 +up 7 +up 5 +forward 7 +down 8 +down 5 +forward 7 +up 5 +up 1 +down 4 +forward 1 +up 3 +forward 7 +forward 9 +down 7 +forward 4 +down 9 +down 2 +up 2 +forward 2 +down 6 +forward 3 +down 5 +up 8 +forward 5 +up 5 +forward 1 +down 4 +forward 7 +down 8 +forward 7 +up 2 +forward 1 +forward 2 +down 7 +forward 7 +forward 5 +up 3 +down 8 +forward 8 +up 6 +up 2 +forward 9 +down 7 +up 6 +down 1 +up 5 +forward 4 +forward 9 +forward 6 +forward 3 +forward 3 +forward 1 +forward 8 +down 6 +forward 3 +up 2 +up 6 +down 3 +down 7 +forward 5 +down 2 +up 9 +up 3 +down 1 +down 3 +up 7 +up 5 +down 6 +down 5 +up 2 +down 1 +down 2 +forward 1 +down 1 +forward 1 +down 1 +up 5 +up 4 +forward 1 +down 7 +forward 4 +down 6 +forward 2 +forward 1 +forward 4 +forward 9 +down 7 +forward 7 +down 7 +down 5 +forward 7 +forward 3 +forward 8 +up 4 +forward 9 +down 1 +down 9 +forward 3 +down 7 +forward 1 +forward 8 +up 7 +forward 5 +down 8 +forward 3 +forward 6 +forward 6 +up 5 +forward 7 +up 3 +down 9 +forward 4 +forward 4 +forward 1 +down 2 +down 9 +forward 8 +forward 8 +down 9 +forward 5 +up 4 +down 6 +forward 3 +up 4 +down 5 +down 2 +down 3 +down 2 +up 1 +up 9 +up 3 +forward 5 +forward 7 +down 1 +down 5 +up 1 +forward 8 +down 5 +forward 8 +forward 8 +down 2 +forward 2 +forward 7 +forward 3 +forward 6 +up 9 +down 3 +forward 7 +down 5 +forward 3 +up 1 +down 3 +down 9 +forward 5 +forward 5 +up 5 +down 3 +down 3 +up 1 +forward 6 +up 1 +up 6 +forward 5 +down 3 +down 9 +forward 1 +down 5 +up 5 +down 7 +down 7 +down 6 +down 2 +up 7 +down 3 +forward 2 +up 6 +down 2 +forward 6 +forward 9 +down 6 +down 4 +down 5 +down 7 +forward 9 +up 2 +down 2 +down 4 +forward 4 +down 9 +forward 3 +forward 8 +forward 6 +up 5 +down 2 +down 7 +forward 7 +up 6 +down 4 +up 8 +forward 2 +down 8 +forward 7 +up 8 +up 5 +up 8 +down 1 +forward 4 +forward 7 +down 5 +forward 1 +forward 5 +down 9 +down 6 +up 8 +up 5 +down 7 +down 4 +forward 4 +forward 2 +forward 4 +down 1 +up 4 +down 5 +down 4 +up 5 +forward 2 +up 3 +down 9 +down 1 +down 4 +up 1 +up 7 +down 5 +forward 9 +down 5 +down 7 +down 2 +down 8 +forward 7 +down 5 +down 6 +forward 3 +down 8 +down 5 +down 9 +up 6 +up 2 +down 9 +down 6 +down 7 +forward 8 +down 8 +forward 4 +up 8 +forward 3 +down 2 +up 2 +forward 4 +down 9 +down 2 +up 6 +down 4 +forward 6 +down 7 +forward 5 +forward 4 +down 3 +up 6 +forward 7 +forward 1 +up 6 +down 6 +forward 5 +forward 3 +down 8 +up 8 +up 8 +forward 5 +forward 1 +up 1 +forward 3 +up 6 +forward 2 +down 8 +forward 8 +up 8 +forward 1 +forward 6 +forward 8 +up 7 +up 3 +forward 8 +forward 5 +down 4 +down 4 +forward 8 +up 1 +forward 5 +down 9 +forward 2 +down 2 +down 3 +forward 1 +down 2 +up 3 +down 1 +up 1 +up 1 +forward 8 +forward 5 +forward 2 +up 1 +down 9 +up 7 +down 1 +forward 9 +up 4 +forward 5 +forward 5 +forward 8 +down 1 +forward 3 +forward 4 +forward 8 +up 2 +forward 5 +down 8 +forward 5 +up 7 +forward 3 +forward 2 +forward 3 +up 7 +up 4 +up 9 +forward 7 +forward 1 +up 6 +up 5 +down 8 +forward 3 +down 5 +forward 7 +forward 3 +up 9 +forward 9 +forward 7 +up 2 +down 7 +forward 4 +down 9 +up 8 +up 3 +down 4 +down 1 +forward 4 +up 3 +down 6 +down 2 +forward 8 +up 1 +forward 5 +up 7 +down 5 +forward 9 +forward 6 +forward 9 +down 3 +up 8 +forward 6 +forward 4 +forward 2 +forward 2 +down 8 +up 5 +down 4 +down 6 +forward 3 +forward 6 +forward 1 +forward 3 +down 8 +down 5 +up 3 +down 1 +down 7 +forward 8 +forward 1 +down 6 +down 9 +forward 2 +up 5 +down 6 +up 6 +down 5 +down 8 +forward 1 +down 3 +forward 1 +forward 8 +forward 2 +down 4 +forward 1 +down 6 +down 6 +forward 3 +up 7 +forward 5 +up 1 +up 4 +forward 7 +forward 1 +down 5 +forward 2 +down 1 +forward 4 +forward 2 +forward 5 +up 2 +up 1 +forward 2 +down 4 +down 5 +forward 6 +forward 1 +down 7 +down 6 +down 2 +forward 5 +forward 6 +up 8 +up 6 +forward 2 +forward 6 +down 9 +down 4 +forward 1 +down 3 +down 1 +up 4 +down 8 +forward 3 +down 5 +up 4 +down 5 +up 3 +down 1 +down 1 +down 9 +forward 8 +up 8 +down 2 +forward 9 +down 8 +down 4 +up 4 +up 9 +up 4 +forward 8 +forward 9 +forward 3 +forward 2 +down 2 +forward 5 +down 6 +down 2 +down 9 +forward 3 +up 4 +forward 8 +up 9 +forward 2 +forward 1 +down 3 +up 1 +up 7 +down 3 +up 2 +down 2 +up 2 +forward 4 +down 7 +forward 2 +forward 4 +forward 3 +down 6 +forward 4 +down 3 +forward 2 +down 1 +up 4 +down 8 +up 3 +forward 4 +up 6 +forward 5 +forward 3 +forward 1 +up 2 +forward 4 +forward 7 +down 3 +forward 9 +up 7 +down 9 +forward 2 +forward 4 +down 9 +down 1 +up 3 +forward 2 +forward 7 +down 7 +forward 9 +forward 5 +forward 7 +forward 2 +forward 3 +forward 4 +forward 5 +forward 6 +down 1 +forward 8 +down 4 +down 6 +up 8 +up 5 +forward 5 +down 9 +down 2 +down 2 +forward 7 +forward 8 +up 8 +down 4 +up 5 +forward 1 +down 5 +forward 3 +up 3 +down 6 +forward 5 +up 3 +up 5 +forward 4 +forward 2 +up 6 +down 9 +forward 7 diff --git a/2021/2.sh b/2021/2.sh new file mode 100755 index 0000000..360b5fc --- /dev/null +++ b/2021/2.sh @@ -0,0 +1,15 @@ +#!/usr/bin/env bash +{ + echo 'h=0' + echo 'd=0' + cat 2.in | sed 's/forward/h+=/; s/down/d+=/; s/up/d-=/; s/^/: $((/; s/$/))/' + echo 'echo $((h * d))' +} | bash + +{ + echo 'h=0' + echo 'a=0' + echo 'd=0' + cat 2.in | sed 's/forward \(.*\)/: $((h+=\1)) $((d+=a*\1))/; s/down \(.*\)/: $((a+=\1))/; s/up \(.*\)/: $((a-=\1))/' + echo 'echo $((h * d))' +} | bash |