diff options
author | Marvin Borner | 2022-12-09 07:22:05 +0100 |
---|---|---|
committer | Marvin Borner | 2022-12-09 07:26:35 +0100 |
commit | 0fd2e425ea70484ad2fa6ab7379be954c92f3c2f (patch) | |
tree | 2ab0ec9b9b385f1141ad3cf6cb1cbc42ede3ade5 /2022/09 | |
parent | 01722b35f1101358077481008c998fb84867c928 (diff) |
i did NOT like that
Diffstat (limited to '2022/09')
-rw-r--r-- | 2022/09/input | 2000 | ||||
-rw-r--r-- | 2022/09/solve.py | 32 |
2 files changed, 2032 insertions, 0 deletions
diff --git a/2022/09/input b/2022/09/input new file mode 100644 index 0000000..de3f33c --- /dev/null +++ b/2022/09/input @@ -0,0 +1,2000 @@ +U 2 +D 2 +R 2 +U 2 +D 1 +L 2 +R 2 +D 1 +R 2 +D 1 +R 2 +L 1 +U 1 +L 2 +R 2 +L 2 +U 2 +R 2 +L 1 +U 1 +R 2 +U 1 +D 2 +L 1 +U 2 +D 1 +L 1 +R 1 +L 1 +D 1 +R 1 +D 2 +L 1 +U 2 +L 1 +U 1 +D 2 +U 1 +R 2 +U 1 +R 2 +D 1 +U 1 +D 2 +L 2 +U 2 +L 2 +R 1 +L 1 +U 2 +D 2 +U 1 +R 2 +L 2 +U 1 +R 1 +L 2 +D 1 +L 1 +U 2 +D 1 +R 1 +U 2 +R 2 +U 2 +R 2 +D 1 +L 2 +R 2 +U 2 +D 2 +U 2 +L 1 +U 1 +L 2 +U 1 +D 1 +L 1 +D 1 +L 1 +R 1 +L 1 +R 2 +D 1 +L 1 +D 2 +R 2 +L 1 +U 2 +L 1 +U 2 +L 1 +U 1 +D 2 +U 1 +L 1 +R 1 +D 1 +L 2 +U 1 +L 1 +R 2 +D 1 +L 2 +U 1 +L 2 +D 2 +R 2 +D 2 +U 1 +D 2 +R 3 +U 2 +L 2 +R 3 +L 2 +U 3 +L 3 +D 1 +R 2 +L 1 +R 2 +U 3 +R 3 +L 1 +D 2 +R 3 +L 2 +D 3 +L 3 +U 1 +R 1 +D 2 +R 2 +D 3 +L 3 +U 3 +R 3 +D 2 +U 1 +D 3 +L 2 +R 1 +D 3 +L 3 +D 3 +L 2 +D 3 +L 1 +D 2 +R 2 +L 3 +U 2 +R 2 +L 1 +U 1 +D 3 +R 3 +U 2 +R 3 +D 1 +R 1 +U 3 +D 2 +L 2 +D 2 +L 3 +U 2 +R 3 +D 1 +L 3 +U 1 +R 3 +U 1 +D 1 +U 2 +D 1 +R 2 +L 2 +D 1 +R 1 +D 2 +L 1 +U 1 +D 1 +R 2 +D 1 +L 2 +R 1 +D 3 +U 1 +D 3 +U 2 +L 1 +U 3 +D 2 +L 3 +U 2 +D 3 +R 3 +D 3 +U 3 +R 1 +U 2 +L 3 +D 1 +R 3 +D 2 +U 2 +D 2 +L 3 +U 3 +D 3 +R 3 +L 2 +D 3 +U 3 +D 3 +U 2 +R 2 +L 3 +R 3 +U 1 +D 1 +U 2 +L 4 +D 1 +U 1 +L 2 +D 4 +U 3 +L 1 +U 1 +D 1 +L 4 +R 4 +L 4 +R 2 +U 4 +L 2 +R 1 +L 3 +U 3 +D 2 +L 3 +U 4 +R 3 +L 4 +D 2 +U 3 +D 2 +U 2 +L 4 +D 2 +L 1 +R 4 +U 4 +D 2 +U 4 +L 4 +D 2 +L 3 +U 3 +D 1 +R 1 +U 1 +D 4 +U 3 +L 4 +D 1 +L 4 +U 1 +L 2 +U 3 +D 2 +L 3 +U 4 +D 2 +U 1 +D 1 +U 1 +R 2 +L 2 +D 3 +U 2 +R 1 +U 1 +L 4 +U 1 +R 2 +D 3 +R 1 +D 1 +R 3 +D 3 +L 1 +U 3 +L 3 +D 4 +L 3 +D 4 +L 1 +D 1 +R 1 +D 1 +U 4 +L 2 +U 3 +D 4 +R 4 +D 1 +U 2 +D 4 +U 1 +R 4 +L 2 +D 3 +U 4 +R 3 +D 1 +L 3 +D 4 +R 4 +L 3 +D 2 +L 3 +U 3 +R 3 +D 1 +R 1 +L 2 +D 2 +U 4 +R 1 +L 1 +D 2 +U 3 +D 3 +L 3 +D 5 +L 1 +U 2 +L 5 +U 3 +R 3 +L 2 +U 2 +L 1 +U 5 +L 4 +D 1 +L 3 +D 5 +U 3 +R 5 +D 1 +L 5 +R 5 +L 5 +D 4 +U 4 +L 5 +U 5 +R 5 +U 2 +D 5 +L 5 +U 3 +L 3 +U 4 +L 5 +U 3 +D 4 +R 3 +U 1 +L 2 +U 5 +L 1 +U 2 +D 1 +U 1 +D 1 +R 4 +L 1 +R 2 +D 2 +R 3 +L 5 +R 2 +D 5 +U 4 +R 5 +D 3 +L 1 +D 3 +R 3 +L 1 +R 4 +D 3 +L 5 +D 1 +R 1 +U 4 +D 2 +R 3 +U 4 +D 3 +U 1 +D 1 +R 1 +D 4 +U 1 +L 5 +R 1 +U 5 +L 4 +R 1 +L 1 +R 4 +D 3 +U 3 +D 3 +U 4 +L 2 +U 1 +R 2 +U 1 +D 4 +U 4 +R 1 +U 4 +R 3 +L 4 +R 2 +L 4 +D 5 +R 3 +U 1 +D 1 +L 3 +R 2 +U 1 +D 3 +U 1 +D 1 +R 3 +U 2 +L 6 +R 1 +D 1 +R 5 +L 5 +U 4 +D 1 +L 6 +D 5 +L 3 +D 6 +R 1 +U 3 +D 3 +R 5 +U 1 +R 5 +D 1 +L 1 +D 4 +L 1 +D 4 +R 1 +D 5 +U 6 +L 5 +R 2 +U 2 +D 6 +R 3 +U 6 +L 2 +D 5 +U 3 +R 1 +D 3 +L 1 +D 3 +U 1 +D 3 +U 4 +R 2 +D 3 +R 2 +D 2 +L 3 +U 2 +R 6 +D 4 +R 4 +D 1 +U 3 +D 1 +L 3 +U 6 +R 4 +D 3 +R 3 +L 4 +R 2 +U 5 +D 6 +L 5 +U 3 +L 4 +D 2 +R 2 +D 3 +L 6 +D 1 +U 1 +R 4 +L 5 +D 3 +U 4 +L 2 +U 5 +L 2 +U 5 +D 1 +L 4 +U 1 +R 2 +L 3 +D 1 +U 4 +D 2 +U 2 +L 1 +D 4 +R 2 +L 3 +R 2 +D 6 +R 2 +D 3 +R 3 +D 2 +U 6 +D 4 +R 4 +U 4 +L 5 +R 3 +L 4 +D 3 +L 2 +R 2 +D 1 +L 6 +R 7 +L 3 +U 3 +D 6 +U 4 +R 4 +D 7 +L 4 +U 1 +L 5 +R 5 +L 5 +U 7 +R 1 +D 2 +R 6 +D 6 +U 2 +R 1 +U 2 +L 5 +D 7 +U 5 +L 3 +U 4 +L 5 +U 4 +L 2 +D 1 +U 3 +R 4 +L 5 +R 5 +L 4 +R 3 +L 7 +R 4 +U 1 +L 4 +R 4 +U 7 +D 3 +U 4 +L 7 +D 5 +L 1 +D 5 +L 7 +U 5 +L 5 +D 3 +U 5 +D 3 +U 7 +R 5 +D 1 +U 2 +L 1 +U 1 +D 1 +L 1 +U 6 +D 2 +L 7 +U 5 +R 4 +L 3 +U 2 +L 1 +R 1 +L 2 +D 3 +L 3 +U 4 +D 4 +U 7 +D 7 +U 6 +D 7 +R 5 +U 7 +D 4 +U 3 +R 3 +D 3 +U 6 +L 6 +U 1 +R 1 +U 7 +R 2 +U 1 +D 1 +R 1 +D 1 +L 6 +U 6 +D 7 +R 4 +D 1 +L 2 +U 6 +L 2 +D 2 +R 2 +D 3 +L 3 +R 5 +D 1 +R 4 +L 1 +U 1 +R 3 +L 8 +U 3 +L 3 +R 5 +L 8 +D 1 +R 1 +D 8 +L 4 +D 2 +L 4 +U 3 +D 6 +R 2 +U 4 +D 6 +R 8 +D 4 +L 7 +R 6 +U 2 +R 1 +U 3 +R 2 +L 1 +R 8 +L 2 +D 6 +R 6 +D 6 +U 2 +D 6 +R 7 +D 4 +U 6 +R 5 +D 8 +L 3 +R 6 +D 4 +R 4 +U 2 +D 8 +L 8 +U 6 +D 2 +R 3 +L 2 +D 6 +U 8 +R 3 +D 3 +L 5 +D 5 +L 4 +R 8 +D 3 +U 3 +D 2 +R 8 +U 4 +L 8 +U 2 +R 1 +L 4 +D 5 +L 5 +R 5 +D 3 +L 7 +D 4 +L 6 +D 2 +U 3 +D 2 +L 2 +D 6 +R 2 +U 6 +R 7 +L 8 +U 3 +D 8 +L 1 +U 8 +L 8 +D 2 +R 6 +U 4 +D 8 +U 3 +L 7 +D 7 +L 8 +U 8 +L 4 +U 6 +L 1 +U 4 +D 7 +U 3 +R 2 +D 4 +L 5 +U 8 +R 4 +U 1 +R 2 +U 4 +D 7 +U 7 +R 7 +D 7 +U 9 +L 4 +D 8 +U 6 +L 3 +D 1 +U 8 +L 9 +U 8 +D 8 +U 2 +L 1 +U 5 +L 9 +U 4 +D 7 +L 5 +U 4 +R 5 +D 2 +L 3 +D 5 +R 3 +L 2 +D 9 +U 5 +L 6 +U 7 +D 2 +R 2 +D 3 +R 5 +U 7 +L 1 +U 9 +R 3 +D 8 +R 6 +D 5 +U 9 +R 9 +D 3 +U 8 +D 3 +R 6 +D 4 +U 8 +L 4 +D 8 +R 2 +U 2 +R 3 +D 9 +L 9 +U 7 +R 4 +D 4 +L 5 +U 1 +D 3 +R 6 +L 4 +R 1 +D 6 +R 4 +L 4 +U 6 +D 2 +L 2 +D 3 +R 8 +D 3 +U 4 +L 4 +D 2 +U 2 +L 4 +D 9 +R 9 +D 6 +U 7 +L 8 +U 6 +D 5 +R 2 +D 5 +U 9 +R 5 +D 7 +U 2 +L 3 +R 2 +U 5 +L 4 +D 5 +U 2 +L 9 +U 3 +R 2 +D 9 +R 5 +D 9 +U 2 +R 2 +L 6 +U 3 +L 6 +R 8 +U 5 +D 8 +R 9 +L 2 +R 2 +U 1 +D 10 +R 8 +L 6 +D 9 +R 5 +L 10 +R 2 +L 3 +R 9 +D 7 +U 10 +D 9 +L 7 +U 8 +D 7 +U 2 +D 1 +U 5 +R 9 +U 9 +R 6 +D 4 +L 3 +D 6 +R 10 +D 2 +L 4 +U 8 +R 6 +L 3 +U 1 +D 8 +R 6 +D 4 +L 1 +R 3 +L 10 +U 4 +D 5 +U 1 +R 3 +U 5 +R 5 +D 9 +R 1 +L 4 +U 4 +R 4 +D 7 +L 1 +U 6 +R 6 +U 1 +D 4 +R 2 +L 3 +D 6 +L 3 +R 1 +L 10 +D 1 +L 1 +U 6 +R 7 +L 8 +U 2 +D 10 +R 4 +D 9 +R 2 +U 9 +L 2 +U 7 +D 4 +U 4 +R 9 +U 9 +R 6 +D 7 +L 8 +U 1 +D 6 +L 6 +U 8 +D 3 +R 4 +L 4 +D 1 +L 2 +D 3 +L 2 +U 1 +L 5 +D 2 +U 8 +L 1 +U 5 +L 3 +U 3 +R 3 +U 1 +L 7 +D 9 +R 3 +D 10 +R 8 +L 5 +D 3 +U 6 +R 4 +U 4 +D 2 +L 5 +U 11 +L 3 +U 1 +L 6 +D 1 +L 2 +U 8 +R 6 +L 4 +R 2 +U 3 +L 3 +D 4 +L 2 +R 5 +U 4 +D 5 +U 10 +R 1 +D 6 +L 4 +U 9 +D 3 +U 5 +D 9 +L 1 +U 8 +D 11 +L 4 +D 4 +L 5 +D 7 +L 7 +R 10 +U 5 +R 1 +D 10 +R 3 +D 11 +R 7 +L 6 +U 7 +D 4 +L 7 +U 8 +R 6 +L 4 +U 5 +L 7 +R 2 +D 10 +L 8 +R 4 +U 1 +R 5 +L 2 +R 4 +L 6 +R 4 +U 10 +R 6 +U 9 +R 9 +D 6 +L 7 +D 1 +U 1 +L 8 +U 1 +D 8 +L 10 +R 6 +D 4 +R 9 +D 4 +R 3 +D 4 +U 8 +L 3 +D 7 +L 2 +R 10 +U 5 +R 4 +L 3 +D 6 +U 7 +R 8 +D 5 +R 6 +L 7 +R 4 +U 6 +L 8 +D 8 +R 6 +L 6 +U 8 +R 10 +U 4 +R 2 +D 2 +L 11 +R 10 +L 5 +U 10 +L 5 +D 12 +L 7 +D 8 +L 2 +U 1 +L 11 +R 3 +D 8 +U 7 +L 6 +D 9 +L 12 +U 7 +L 11 +R 7 +U 8 +L 4 +D 9 +U 6 +D 9 +R 7 +L 4 +R 12 +U 8 +D 6 +U 8 +D 6 +U 5 +L 2 +U 2 +L 9 +D 10 +L 11 +U 10 +R 4 +L 12 +U 6 +L 11 +R 10 +U 9 +L 2 +D 11 +L 11 +D 10 +U 8 +R 10 +L 7 +R 6 +L 6 +U 5 +L 8 +D 5 +U 7 +L 5 +D 8 +R 5 +L 7 +D 10 +L 10 +D 12 +L 8 +R 11 +U 6 +L 12 +D 9 +U 5 +R 2 +U 6 +D 11 +U 5 +R 1 +L 2 +R 3 +U 8 +R 4 +L 10 +R 6 +D 9 +L 3 +U 11 +L 4 +U 1 +R 5 +L 8 +D 8 +U 2 +D 7 +U 5 +R 10 +L 4 +D 4 +U 2 +L 7 +D 12 +U 12 +D 5 +U 12 +R 3 +L 4 +U 10 +L 1 +R 2 +L 9 +R 9 +L 5 +U 5 +L 10 +U 12 +L 3 +D 5 +U 12 +L 10 +D 11 +U 12 +L 2 +U 11 +R 6 +D 10 +U 6 +L 5 +D 10 +U 10 +D 12 +U 3 +L 10 +U 9 +R 4 +U 4 +L 12 +R 12 +L 4 +D 5 +L 9 +U 5 +L 11 +R 12 +D 8 +L 6 +U 10 +D 2 +U 11 +D 6 +R 10 +D 1 +L 5 +U 1 +D 10 +U 1 +L 13 +U 11 +L 6 +R 1 +U 11 +D 10 +R 11 +L 3 +U 6 +R 13 +U 13 +L 6 +R 4 +D 3 +L 10 +U 2 +R 9 +D 6 +L 12 +U 11 +D 9 +R 2 +L 2 +D 4 +R 13 +L 7 +R 7 +L 9 +R 11 +U 4 +D 2 +L 4 +R 12 +L 3 +D 8 +U 9 +D 3 +R 11 +U 11 +D 13 +U 1 +D 6 +U 2 +R 13 +L 5 +U 6 +L 5 +U 13 +L 12 +D 7 +L 12 +R 4 +U 4 +D 3 +L 5 +D 10 +U 10 +L 2 +U 11 +L 9 +U 11 +R 7 +D 4 +U 9 +D 7 +R 6 +L 2 +D 2 +L 1 +U 10 +R 5 +U 5 +R 1 +L 10 +D 11 +U 5 +D 13 +R 9 +D 6 +R 2 +D 13 +R 12 +L 11 +D 6 +R 9 +U 12 +R 11 +U 6 +R 12 +D 4 +R 11 +L 5 +D 1 +U 5 +R 8 +D 1 +R 12 +L 9 +U 6 +L 9 +U 3 +L 6 +R 3 +U 2 +R 3 +U 14 +L 7 +R 7 +L 12 +U 7 +R 5 +D 7 +L 10 +U 14 +D 8 +L 5 +U 11 +D 4 +U 10 +R 9 +U 4 +R 1 +L 11 +U 13 +D 8 +R 10 +L 3 +U 11 +L 5 +U 2 +R 6 +U 3 +R 10 +L 4 +R 3 +D 8 +U 11 +L 11 +U 6 +R 6 +U 8 +R 4 +L 10 +R 2 +U 4 +L 2 +D 12 +R 12 +D 4 +U 14 +R 6 +U 1 +R 9 +L 5 +U 9 +D 5 +R 13 +U 11 +L 8 +R 11 +D 9 +L 8 +D 8 +U 5 +R 2 +L 3 +D 6 +U 9 +D 1 +L 8 +U 6 +L 6 +R 8 +D 13 +R 12 +L 5 +U 8 +R 11 +D 4 +U 13 +D 10 +U 4 +D 3 +L 14 +R 14 +D 5 +R 2 +D 7 +L 13 +U 1 +L 14 +U 15 +D 11 +R 2 +U 15 +R 11 +L 8 +U 11 +D 4 +R 2 +U 8 +L 8 +R 11 +U 9 +L 11 +D 4 +L 8 +U 9 +L 9 +D 15 +U 1 +L 8 +U 7 +L 12 +U 13 +R 7 +L 6 +D 13 +U 1 +L 9 +D 11 +R 8 +D 3 +R 11 +L 8 +R 9 +U 2 +L 1 +U 5 +D 14 +R 3 +U 12 +R 4 +U 15 +D 1 +R 11 +L 11 +U 11 +L 1 +D 12 +U 7 +L 13 +R 4 +U 5 +D 15 +L 14 +R 10 +U 9 +R 7 +D 13 +L 15 +R 10 +L 2 +R 5 +D 12 +U 13 +R 6 +L 15 +R 14 +D 1 +U 1 +L 2 +U 11 +R 15 +U 8 +R 9 +U 5 +L 9 +D 14 +R 9 +D 9 +U 8 +R 8 +U 3 +R 7 +D 11 +R 4 +U 9 +R 9 +U 11 +D 4 +U 12 +L 9 +R 3 +D 7 +L 6 +R 1 +D 9 +R 1 +D 4 +R 16 +U 12 +R 8 +D 7 +L 7 +R 9 +U 16 +R 15 +U 14 +L 14 +D 3 +R 4 +U 4 +D 1 +L 2 +D 11 +R 2 +U 2 +D 16 +U 4 +D 5 +R 14 +D 3 +R 5 +D 10 +R 2 +L 4 +U 6 +R 9 +D 16 +R 12 +U 2 +L 16 +R 7 +L 8 +R 5 +L 5 +U 14 +D 16 +U 7 +R 2 +U 15 +L 3 +R 7 +L 5 +U 8 +R 11 +D 3 +L 5 +U 7 +L 8 +R 3 +U 3 +D 5 +U 13 +L 8 +U 1 +D 13 +R 11 +L 2 +U 14 +R 15 +U 2 +D 7 +R 15 +L 5 +D 9 +U 8 +R 5 +L 15 +D 3 +R 10 +D 10 +U 7 +D 7 +U 14 +R 2 +U 8 +R 14 +L 11 +R 16 +U 11 +D 16 +U 2 +L 10 +U 5 +D 6 +L 7 +U 8 +D 10 +R 11 +L 7 +D 5 +U 6 +L 5 +D 5 +R 1 +L 7 +U 9 +L 5 +U 3 +D 7 +R 14 +U 9 +D 6 +L 13 +U 8 +L 5 +D 5 +R 3 +U 7 +D 6 +U 8 +R 16 +U 17 +L 5 +R 8 +L 8 +U 8 +L 10 +D 17 +R 5 +D 3 +L 17 +R 17 +D 4 +R 15 +D 6 +L 3 +R 17 +D 9 +L 13 +U 4 +D 2 +L 17 +R 1 +L 14 +D 17 +L 9 +R 12 +U 14 +D 12 +U 3 +R 7 +D 1 +L 13 +R 13 +U 16 +D 13 +U 15 +R 15 +U 4 +D 11 +L 7 +U 1 +D 14 +U 8 +L 11 +D 13 +L 12 +U 17 +L 13 +U 2 +R 10 +L 12 +R 12 +U 1 +R 8 +U 10 +D 15 +R 3 +U 4 +R 12 +L 9 +D 15 +L 13 +D 15 +L 7 +D 8 +L 7 +U 6 +L 17 +R 4 +D 10 +U 11 +L 8 +R 14 +U 9 +R 9 +L 6 +U 1 +L 5 +D 11 +R 10 +L 16 +U 15 +L 12 +R 13 +D 5 +L 4 +D 12 +L 6 +R 3 +D 12 +L 4 +U 2 +L 16 +D 6 +R 15 +U 7 +D 2 +L 14 +D 6 +R 14 +D 7 +U 11 +R 4 +D 3 +R 6 +L 3 +D 11 +U 2 +R 5 +U 3 +L 1 +U 7 +R 13 +U 12 +D 12 +R 13 +D 7 +L 12 +D 10 +U 14 +R 12 +D 4 +R 2 +U 16 +D 9 +L 14 +U 14 +D 8 +L 7 +R 7 +D 18 +U 18 +R 8 +L 15 +U 12 +D 11 +L 16 +D 18 +R 14 +L 5 +R 12 +D 11 +R 13 +L 17 +D 4 +L 10 +U 1 +L 8 +U 10 +R 13 +D 2 +L 14 +D 1 +R 5 +L 4 +R 11 +L 7 +D 2 +R 8 +L 13 +R 5 +L 5 +R 11 +U 15 +D 3 +U 2 +R 6 +U 1 +R 8 +L 5 +U 1 +R 9 +D 13 +R 8 +U 17 +L 16 +U 3 +L 9 +D 9 +U 6 +L 8 +R 13 +L 7 +R 16 +U 6 +L 13 +U 18 +L 17 +D 15 +R 5 +U 6 +D 11 +U 15 +L 4 +R 14 +U 9 +R 11 +U 9 +L 11 +D 7 +U 9 +L 10 +D 4 +R 7 +U 7 +D 8 +R 1 +D 12 +R 16 +U 7 +R 9 +D 10 +R 1 +L 1 +U 16 +L 4 +U 11 +D 1 +U 3 +R 17 +U 17 +L 12 +R 9 +U 14 +D 4 +L 6 +R 4 +L 15 +U 1 +D 2 +U 9 +R 16 +L 1 +R 2 +L 12 +U 12 +D 7 +R 13 +D 6 +L 2 +D 3 +U 8 +L 7 +U 16 +L 15 +D 18 +L 19 +U 7 +R 17 +D 7 +U 3 +R 12 +D 1 +L 17 +U 19 +D 15 +R 3 +D 5 +U 17 +D 16 +U 2 +R 13 +D 7 +U 19 +L 5 +R 3 +D 15 +L 12 +D 19 +L 19 +U 1 +R 10 +D 14 +U 3 +R 1 +L 6 +U 14 +L 11 +R 10 +L 7 +R 14 +D 9 +U 14 +R 5 +L 19 +U 10 +L 12 +U 10 +L 3 +D 13 +U 12 +R 12 +D 6 +L 2 +U 1 +D 16 +U 9 +L 7 +R 14 +L 15 +U 9 +L 19 +U 14 +D 9 +U 15 +L 13 +U 12 +L 1 +D 7 +U 7 +L 7 +R 2 +U 16 +R 6 +D 11 +U 7 +D 11 +U 19 +R 13 +D 7 +R 7 +L 6 +R 14 +L 18 +D 2 +L 5 +D 8 +L 7 +U 17 +D 15 +U 19 diff --git a/2022/09/solve.py b/2022/09/solve.py new file mode 100644 index 0000000..a4b3c3f --- /dev/null +++ b/2022/09/solve.py @@ -0,0 +1,32 @@ +data = [dat.split(" ") for dat in open("input").readlines() if dat != ''] + +def solve(n): + knots = [[0,0] for i in range(n)] + tails = set() + for line in data: + direction = line[0] + amount = int(line[1]) + + for i in range(amount): + head = knots[0] + head[0 if direction == "U" or direction == "D" else 1] += 1 if direction == "R" or direction == "U" else -1 + + for knot in range(len(knots)-1): + head, tail = knots[knot], knots[knot + 1] + xd, yd = head[0]-tail[0], head[1]-tail[1] + + if abs(yd) > 1: + tail[1] += 1 if yd > 0 else -1 + if abs(xd) > 0: + tail[0] += 1 if xd > 0 else -1 + elif abs(xd) > 1: + tail[0] += 1 if xd > 0 else -1 + if abs(yd) > 0: + tail[1] += 1 if yd > 0 else -1 + + tails.add(tuple(tail)) + + return len(tails) + +print(f"Part 1: {solve(2)}") +print(f"Part 2: {solve(10)}") |