From 1e0e651feaad428a0d3a59afe7e6db0d89e444a8 Mon Sep 17 00:00:00 2001 From: Thom Dickson Date: Sat, 4 Dec 2021 15:47:33 -0500 Subject: [PATCH] Solve day02 part 2 --- day02.in2 | 1000 +++++++++++++++++++++++++++++++++++++++++++++++++++++ day02.py | 17 + 2 files changed, 1017 insertions(+) create mode 100644 day02.in2 diff --git a/day02.in2 b/day02.in2 new file mode 100644 index 0000000..8620ca7 --- /dev/null +++ b/day02.in2 @@ -0,0 +1,1000 @@ +forward 8 +forward 3 +down 8 +down 2 +up 1 +up 4 +down 9 +forward 3 +forward 4 +forward 5 +forward 1 +forward 1 +up 8 +forward 2 +forward 9 +down 2 +forward 8 +down 5 +down 3 +down 8 +up 1 +forward 1 +down 8 +up 7 +down 8 +down 9 +down 4 +down 7 +forward 7 +forward 9 +down 2 +down 5 +forward 1 +down 1 +forward 2 +up 8 +down 8 +forward 2 +up 5 +down 6 +down 5 +down 2 +forward 5 +forward 4 +forward 6 +down 4 +up 1 +down 8 +down 7 +down 3 +down 4 +down 5 +forward 7 +down 3 +down 3 +forward 3 +down 2 +up 8 +up 8 +forward 2 +down 8 +down 8 +forward 3 +forward 9 +forward 3 +forward 2 +down 9 +down 3 +forward 4 +forward 1 +down 7 +forward 5 +up 2 +down 6 +up 4 +down 2 +up 5 +forward 6 +down 6 +down 1 +forward 5 +forward 4 +up 8 +up 5 +forward 2 +down 5 +down 4 +up 1 +forward 9 +up 5 +up 5 +forward 3 +down 6 +forward 7 +down 2 +forward 1 +forward 4 +forward 4 +down 2 +down 6 +down 3 +down 1 +forward 1 +down 8 +forward 2 +down 1 +down 2 +forward 6 +forward 1 +forward 7 +forward 2 +down 2 +up 6 +up 2 +forward 7 +down 6 +down 1 +forward 5 +forward 3 +forward 1 +down 3 +up 1 +forward 3 +forward 1 +down 2 +down 5 +up 8 +down 8 +forward 3 +down 9 +forward 8 +down 8 +down 5 +forward 2 +up 1 +down 3 +up 3 +down 5 +down 7 +down 8 +down 8 +down 1 +forward 9 +up 4 +up 4 +down 5 +forward 6 +forward 1 +up 6 +forward 5 +up 6 +forward 1 +forward 9 +down 3 +down 8 +forward 6 +forward 6 +up 1 +down 6 +forward 2 +down 7 +down 2 +forward 4 +up 4 +up 2 +forward 8 +up 6 +down 8 +up 3 +down 5 +down 3 +forward 3 +down 8 +up 4 +up 5 +down 1 +down 7 +down 7 +forward 6 +up 6 +down 1 +forward 7 +down 2 +up 7 +up 3 +forward 9 +down 3 +up 4 +up 1 +forward 8 +down 4 +forward 9 +forward 8 +down 4 +down 3 +down 1 +forward 8 +up 7 +down 3 +up 5 +down 3 +down 9 +down 9 +up 9 +down 9 +up 4 +down 5 +down 5 +forward 8 +forward 1 +up 3 +down 9 +down 8 +forward 2 +forward 1 +up 6 +down 3 +forward 1 +up 6 +forward 9 +forward 3 +forward 3 +down 2 +down 7 +forward 1 +up 9 +up 3 +forward 1 +forward 2 +forward 7 +forward 8 +forward 2 +forward 3 +forward 1 +forward 7 +down 1 +up 7 +up 3 +forward 3 +forward 9 +down 7 +down 3 +forward 2 +forward 8 +up 1 +forward 2 +forward 3 +up 2 +down 1 +down 9 +down 4 +up 3 +forward 3 +down 6 +down 1 +forward 2 +down 8 +forward 3 +forward 9 +forward 1 +forward 6 +forward 5 +down 5 +forward 2 +up 7 +up 7 +down 8 +forward 9 +up 1 +up 5 +up 8 +forward 5 +forward 2 +down 5 +up 5 +down 3 +forward 6 +down 9 +down 7 +forward 2 +forward 8 +forward 3 +down 7 +down 8 +forward 9 +down 3 +down 3 +forward 1 +forward 4 +down 2 +forward 1 +forward 3 +forward 5 +down 9 +up 3 +down 5 +forward 8 +forward 3 +down 5 +forward 3 +forward 7 +down 3 +forward 8 +down 1 +down 3 +down 4 +down 2 +forward 8 +down 2 +forward 5 +down 2 +up 2 +forward 8 +forward 9 +forward 3 +forward 2 +forward 3 +down 2 +forward 5 +down 1 +down 9 +up 1 +down 6 +forward 2 +up 1 +forward 6 +down 2 +forward 2 +forward 1 +forward 4 +forward 4 +forward 9 +forward 2 +down 5 +forward 9 +forward 1 +forward 7 +forward 1 +down 7 +forward 7 +down 4 +down 8 +down 8 +down 1 +forward 4 +down 5 +up 3 +down 5 +forward 6 +down 6 +down 4 +down 9 +down 4 +down 5 +forward 7 +up 4 +forward 6 +down 9 +down 5 +down 5 +up 2 +forward 8 +up 5 +down 1 +down 2 +up 6 +down 7 +forward 7 +up 5 +forward 4 +up 5 +down 3 +up 7 +forward 4 +down 4 +down 5 +down 7 +down 3 +down 9 +up 8 +down 9 +forward 6 +forward 2 +forward 2 +up 8 +up 2 +down 4 +down 4 +up 7 +up 9 +forward 2 +forward 8 +forward 4 +up 8 +forward 8 +up 2 +down 3 +forward 9 +down 1 +down 7 +forward 4 +down 2 +up 6 +up 6 +down 9 +forward 6 +forward 9 +down 3 +forward 8 +up 1 +down 5 +forward 1 +down 6 +up 8 +forward 2 +up 7 +forward 5 +down 5 +up 3 +forward 2 +forward 1 +forward 4 +down 6 +up 9 +forward 9 +down 8 +forward 2 +down 1 +down 3 +forward 2 +forward 9 +up 1 +forward 9 +down 4 +forward 2 +forward 7 +forward 1 +up 2 +up 2 +down 9 +forward 3 +forward 2 +down 6 +up 8 +down 4 +forward 8 +up 9 +up 6 +down 5 +up 1 +down 9 +down 2 +down 1 +up 8 +down 1 +forward 3 +down 7 +down 7 +forward 8 +down 4 +forward 1 +forward 4 +forward 5 +down 8 +down 2 +down 9 +up 5 +down 8 +down 8 +down 3 +forward 2 +down 5 +up 5 +down 1 +down 2 +forward 9 +down 7 +down 7 +down 1 +down 6 +up 6 +up 7 +down 1 +down 3 +down 2 +down 5 +down 9 +down 4 +down 5 +forward 1 +up 7 +down 7 +forward 6 +forward 4 +down 3 +forward 3 +forward 6 +forward 7 +down 3 +forward 1 +down 6 +down 8 +forward 3 +up 3 +forward 4 +forward 3 +down 6 +up 7 +forward 8 +forward 4 +down 7 +down 6 +down 8 +forward 9 +down 6 +down 5 +up 4 +down 6 +down 8 +down 5 +up 4 +forward 2 +forward 8 +forward 9 +down 2 +forward 5 +down 9 +down 2 +down 7 +forward 2 +down 2 +up 7 +down 2 +up 5 +forward 3 +down 8 +forward 3 +forward 8 +up 3 +down 6 +down 1 +forward 2 +up 7 +down 8 +forward 8 +down 2 +down 3 +down 5 +forward 4 +forward 5 +down 2 +forward 2 +down 5 +down 9 +forward 4 +forward 3 +forward 2 +down 9 +forward 2 +forward 9 +down 5 +down 9 +down 6 +down 6 +down 3 +down 1 +down 7 +forward 7 +forward 2 +up 9 +forward 4 +up 7 +forward 3 +down 2 +up 8 +up 3 +down 4 +up 9 +forward 1 +down 1 +forward 4 +up 4 +forward 4 +up 8 +forward 7 +down 3 +forward 1 +up 3 +up 1 +up 2 +down 3 +forward 5 +down 6 +down 1 +down 2 +forward 2 +down 3 +up 1 +forward 4 +down 2 +forward 8 +forward 3 +forward 7 +forward 7 +down 5 +down 7 +forward 8 +up 2 +down 6 +forward 1 +down 4 +forward 5 +forward 8 +forward 9 +forward 7 +down 1 +down 3 +down 1 +down 2 +forward 3 +up 3 +down 7 +forward 9 +forward 2 +up 8 +up 6 +up 3 +down 5 +forward 8 +down 8 +down 6 +forward 4 +down 2 +down 8 +forward 8 +up 7 +up 4 +up 5 +down 4 +up 6 +forward 2 +forward 9 +down 9 +forward 6 +down 5 +down 7 +forward 5 +up 5 +forward 2 +up 7 +up 3 +down 8 +forward 8 +forward 3 +down 2 +down 5 +forward 4 +down 8 +forward 5 +forward 4 +down 9 +forward 1 +down 4 +up 5 +forward 5 +down 1 +forward 4 +down 4 +forward 4 +down 8 +up 5 +up 4 +up 9 +forward 2 +forward 3 +down 3 +forward 2 +down 6 +down 6 +down 5 +forward 8 +forward 3 +up 1 +down 9 +down 4 +down 1 +up 4 +forward 2 +forward 3 +down 4 +up 4 +forward 5 +forward 2 +up 2 +forward 4 +down 2 +down 3 +down 6 +up 2 +forward 8 +forward 9 +forward 1 +down 1 +up 7 +up 4 +forward 2 +forward 4 +forward 2 +forward 8 +down 9 +down 5 +down 1 +down 1 +down 6 +forward 1 +up 6 +down 4 +down 9 +down 2 +down 2 +down 5 +up 6 +forward 4 +forward 1 +forward 2 +forward 8 +forward 2 +down 6 +forward 1 +down 8 +down 1 +forward 2 +forward 3 +down 9 +down 7 +down 5 +up 1 +forward 1 +down 5 +down 4 +forward 8 +down 9 +up 7 +forward 6 +forward 2 +forward 8 +down 9 +down 1 +up 5 +down 5 +down 3 +forward 6 +forward 5 +forward 2 +forward 6 +up 4 +forward 1 +down 9 +forward 5 +up 1 +down 5 +down 6 +forward 8 +down 4 +up 9 +down 6 +down 9 +down 7 +down 3 +forward 7 +down 5 +up 6 +forward 3 +up 4 +down 5 +up 5 +up 9 +forward 9 +forward 8 +down 9 +forward 9 +down 2 +forward 5 +forward 5 +forward 9 +down 3 +up 8 +down 7 +up 9 +forward 8 +forward 8 +down 1 +down 5 +down 4 +up 8 +forward 4 +forward 7 +down 2 +down 7 +down 6 +down 9 +down 7 +forward 5 +forward 7 +forward 5 +forward 2 +forward 7 +up 2 +down 8 +down 9 +down 5 +down 9 +forward 5 +forward 8 +forward 9 +up 5 +down 9 +down 7 +forward 4 +down 6 +up 5 +up 8 +down 3 +down 2 +up 7 +forward 9 +down 3 +down 2 +down 7 +down 4 +up 6 +up 4 +down 7 +down 4 +forward 5 +forward 6 +up 6 +down 7 +down 9 +down 9 +down 6 +forward 8 +forward 3 +forward 5 +up 1 +up 8 +forward 4 +forward 6 +down 5 +down 4 +forward 5 +forward 9 +down 4 +up 3 +up 8 +down 7 +up 8 +forward 5 +forward 3 +up 4 +up 9 +forward 6 +down 1 +up 6 +down 5 +down 4 +down 3 +down 8 +up 1 +down 1 +up 8 +up 8 +down 6 +forward 4 +forward 9 +down 4 +down 7 +forward 9 +forward 8 +up 6 +down 9 +up 3 +down 8 +forward 4 +forward 6 +forward 9 +up 7 +down 2 +forward 2 +forward 1 +forward 5 +up 9 +up 7 +up 5 +forward 4 +forward 5 +forward 4 +up 5 +forward 4 +up 6 +down 5 +up 2 +forward 5 +forward 5 +down 9 +forward 7 +down 9 +up 4 +up 9 +forward 6 +forward 7 +down 2 +forward 4 +down 9 +down 6 +forward 1 +forward 7 +up 3 +up 3 +down 6 +up 6 +up 2 +up 3 +forward 7 +up 4 +forward 1 +down 1 +forward 2 +forward 4 +down 1 +down 8 +forward 5 +forward 8 +up 7 +down 3 +forward 3 +forward 6 +down 8 +down 7 +up 9 +forward 3 +up 1 +down 8 +forward 4 +down 9 +forward 3 +forward 8 +down 4 +forward 4 +forward 1 +up 6 +down 1 +down 7 +forward 8 +down 9 +down 8 +down 7 +forward 5 +up 6 +forward 5 +up 1 +down 3 +down 7 +down 4 +forward 6 +down 4 +down 7 +up 9 +down 6 +down 7 +up 3 +up 8 +forward 3 +forward 1 +forward 5 +down 5 +forward 5 +down 1 +forward 9 +up 5 +forward 4 +down 1 +down 8 +up 1 +up 3 +up 8 +down 3 +down 5 +up 7 +forward 4 +down 7 +forward 9 +forward 7 +forward 9 +down 9 +forward 3 +forward 6 +up 3 +forward 4 +forward 4 diff --git a/day02.py b/day02.py index 12d63e4..827d8a3 100644 --- a/day02.py +++ b/day02.py @@ -10,3 +10,20 @@ with open("day02.in") as f: print("Current position:", pos) print("Product:", pos[0] * pos[1]) + +# Part 2 +pos = [0, 0, 0] +with open("day02.in2") as f: + for x in f: + cmd = x.split()[0] + val = int(x.split()[1]) + if cmd == "down": + pos[2] += val + elif cmd == "up": + pos[2] -= val + elif cmd == "forward": + pos[0] += val + pos[1] += pos[2] * val + +print("Current position:", pos) +print("Product:", pos[0] * pos[1])