mirror of
https://github.com/thib8956/advent-of-code.git
synced 2026-11-06 10:02:27 +00:00
import 2021
This commit is contained in:
1 parent
6b6136a8d0
commit
a454b7e15a
17 files changed
+5534
No files matched your search
@@ -0,0 +1,42 @@
|
||||
def part1(inp):
|
||||
horizontal_pos = 0
|
||||
depth = 0
|
||||
for line in inp:
|
||||
command, amount = line.split(" ")
|
||||
if command == "forward":
|
||||
horizontal_pos += int(amount)
|
||||
elif command == "up":
|
||||
depth -= int(amount)
|
||||
elif command == "down":
|
||||
depth += int(amount)
|
||||
#print(f"horizontal {horizontal_pos}, depth {depth}")
|
||||
print("Part 1", horizontal_pos * depth)
|
||||
|
||||
|
||||
def part2(inp):
|
||||
horizontal_pos = 0
|
||||
depth = 0
|
||||
aim = 0
|
||||
for line in inp:
|
||||
command, amount = line.split(" ")
|
||||
if command == "forward":
|
||||
horizontal_pos += int(amount)
|
||||
# It increases your depth by your aim multiplied by X.
|
||||
depth += aim * int(amount)
|
||||
elif command == "up":
|
||||
aim -= int(amount)
|
||||
elif command == "down":
|
||||
aim += int(amount)
|
||||
#print(f"horizontal {horizontal_pos}, depth {depth}")
|
||||
print("Part 2", horizontal_pos * depth)
|
||||
|
||||
|
||||
def main(input_file):
|
||||
with open(input_file) as f:
|
||||
entries = f.readlines()
|
||||
part1(entries)
|
||||
part2(entries)
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
main("input.txt")
|
||||
+1000
@@ -0,0 +1,1000 @@
|
||||
forward 4
|
||||
forward 6
|
||||
down 8
|
||||
forward 3
|
||||
forward 9
|
||||
down 7
|
||||
down 7
|
||||
down 1
|
||||
forward 1
|
||||
forward 5
|
||||
up 4
|
||||
forward 3
|
||||
forward 9
|
||||
forward 5
|
||||
down 8
|
||||
forward 6
|
||||
forward 8
|
||||
up 4
|
||||
forward 1
|
||||
forward 4
|
||||
up 3
|
||||
down 2
|
||||
down 2
|
||||
up 8
|
||||
forward 9
|
||||
down 5
|
||||
down 6
|
||||
down 4
|
||||
forward 1
|
||||
forward 7
|
||||
down 1
|
||||
forward 2
|
||||
down 7
|
||||
down 6
|
||||
forward 3
|
||||
forward 1
|
||||
down 7
|
||||
forward 3
|
||||
up 7
|
||||
up 1
|
||||
forward 6
|
||||
down 8
|
||||
down 4
|
||||
down 1
|
||||
down 7
|
||||
forward 9
|
||||
down 2
|
||||
forward 9
|
||||
up 4
|
||||
down 7
|
||||
forward 9
|
||||
forward 9
|
||||
up 4
|
||||
up 7
|
||||
up 2
|
||||
forward 1
|
||||
down 9
|
||||
forward 2
|
||||
forward 8
|
||||
forward 5
|
||||
down 9
|
||||
forward 5
|
||||
up 1
|
||||
forward 8
|
||||
down 6
|
||||
down 1
|
||||
down 1
|
||||
down 8
|
||||
down 6
|
||||
down 4
|
||||
down 6
|
||||
forward 7
|
||||
forward 5
|
||||
forward 4
|
||||
up 8
|
||||
up 4
|
||||
forward 6
|
||||
forward 9
|
||||
forward 6
|
||||
down 2
|
||||
up 8
|
||||
forward 3
|
||||
forward 8
|
||||
down 5
|
||||
forward 1
|
||||
down 6
|
||||
down 7
|
||||
up 4
|
||||
down 8
|
||||
forward 6
|
||||
up 4
|
||||
forward 7
|
||||
down 8
|
||||
down 8
|
||||
down 2
|
||||
down 8
|
||||
up 7
|
||||
forward 7
|
||||
forward 6
|
||||
down 2
|
||||
forward 9
|
||||
down 7
|
||||
down 4
|
||||
forward 1
|
||||
up 9
|
||||
down 6
|
||||
up 7
|
||||
down 6
|
||||
down 2
|
||||
down 2
|
||||
forward 3
|
||||
down 8
|
||||
forward 4
|
||||
down 7
|
||||
down 2
|
||||
up 8
|
||||
down 6
|
||||
forward 2
|
||||
forward 2
|
||||
down 6
|
||||
up 6
|
||||
down 7
|
||||
up 5
|
||||
up 4
|
||||
up 9
|
||||
forward 9
|
||||
forward 7
|
||||
down 4
|
||||
down 4
|
||||
up 5
|
||||
down 2
|
||||
forward 3
|
||||
down 9
|
||||
down 5
|
||||
forward 8
|
||||
up 3
|
||||
forward 7
|
||||
forward 9
|
||||
down 3
|
||||
forward 1
|
||||
up 1
|
||||
forward 5
|
||||
down 8
|
||||
down 2
|
||||
forward 3
|
||||
down 6
|
||||
down 8
|
||||
up 9
|
||||
down 9
|
||||
forward 4
|
||||
up 5
|
||||
forward 8
|
||||
forward 7
|
||||
forward 7
|
||||
down 3
|
||||
down 5
|
||||
forward 8
|
||||
down 1
|
||||
down 2
|
||||
forward 2
|
||||
up 9
|
||||
down 3
|
||||
down 9
|
||||
forward 2
|
||||
down 4
|
||||
up 9
|
||||
up 3
|
||||
down 1
|
||||
down 1
|
||||
forward 6
|
||||
down 5
|
||||
down 9
|
||||
forward 2
|
||||
up 5
|
||||
forward 3
|
||||
down 1
|
||||
down 7
|
||||
forward 1
|
||||
forward 1
|
||||
down 7
|
||||
up 3
|
||||
up 1
|
||||
up 6
|
||||
forward 9
|
||||
up 1
|
||||
down 8
|
||||
down 5
|
||||
up 6
|
||||
up 2
|
||||
down 8
|
||||
forward 3
|
||||
forward 1
|
||||
down 7
|
||||
up 1
|
||||
down 9
|
||||
down 9
|
||||
up 8
|
||||
forward 4
|
||||
up 8
|
||||
forward 8
|
||||
down 5
|
||||
forward 5
|
||||
forward 2
|
||||
forward 1
|
||||
forward 5
|
||||
down 8
|
||||
forward 6
|
||||
forward 8
|
||||
down 5
|
||||
forward 8
|
||||
up 1
|
||||
up 9
|
||||
up 7
|
||||
down 5
|
||||
down 9
|
||||
up 4
|
||||
down 7
|
||||
up 8
|
||||
up 3
|
||||
forward 6
|
||||
down 9
|
||||
forward 4
|
||||
down 4
|
||||
forward 2
|
||||
forward 3
|
||||
down 4
|
||||
down 5
|
||||
down 3
|
||||
forward 9
|
||||
forward 5
|
||||
forward 9
|
||||
forward 4
|
||||
down 5
|
||||
down 7
|
||||
down 5
|
||||
forward 8
|
||||
up 5
|
||||
down 2
|
||||
forward 3
|
||||
forward 4
|
||||
down 5
|
||||
up 8
|
||||
forward 5
|
||||
down 2
|
||||
up 4
|
||||
down 5
|
||||
down 2
|
||||
forward 1
|
||||
up 3
|
||||
down 6
|
||||
down 8
|
||||
down 3
|
||||
forward 1
|
||||
up 5
|
||||
forward 1
|
||||
down 3
|
||||
forward 4
|
||||
down 6
|
||||
forward 8
|
||||
forward 4
|
||||
forward 1
|
||||
down 8
|
||||
down 2
|
||||
forward 8
|
||||
down 5
|
||||
forward 2
|
||||
forward 2
|
||||
down 9
|
||||
forward 1
|
||||
forward 8
|
||||
up 1
|
||||
forward 1
|
||||
down 1
|
||||
down 7
|
||||
down 4
|
||||
up 4
|
||||
down 3
|
||||
forward 1
|
||||
forward 9
|
||||
down 9
|
||||
up 6
|
||||
up 8
|
||||
down 2
|
||||
down 2
|
||||
down 3
|
||||
forward 2
|
||||
forward 9
|
||||
down 1
|
||||
up 9
|
||||
down 3
|
||||
down 9
|
||||
down 1
|
||||
down 7
|
||||
forward 9
|
||||
forward 7
|
||||
down 5
|
||||
down 2
|
||||
down 9
|
||||
down 2
|
||||
down 7
|
||||
up 7
|
||||
down 2
|
||||
up 3
|
||||
up 5
|
||||
forward 8
|
||||
up 7
|
||||
forward 1
|
||||
down 9
|
||||
down 9
|
||||
down 1
|
||||
forward 6
|
||||
down 7
|
||||
up 4
|
||||
up 4
|
||||
down 9
|
||||
up 5
|
||||
up 8
|
||||
down 3
|
||||
down 5
|
||||
forward 6
|
||||
up 3
|
||||
down 8
|
||||
down 5
|
||||
forward 9
|
||||
up 6
|
||||
forward 9
|
||||
forward 5
|
||||
up 6
|
||||
up 9
|
||||
down 2
|
||||
up 5
|
||||
forward 9
|
||||
down 1
|
||||
up 1
|
||||
down 9
|
||||
forward 4
|
||||
forward 4
|
||||
forward 8
|
||||
down 5
|
||||
down 3
|
||||
down 7
|
||||
forward 5
|
||||
down 6
|
||||
forward 3
|
||||
down 5
|
||||
down 5
|
||||
up 5
|
||||
forward 8
|
||||
forward 1
|
||||
forward 2
|
||||
forward 6
|
||||
up 1
|
||||
down 5
|
||||
down 4
|
||||
up 5
|
||||
forward 3
|
||||
forward 2
|
||||
forward 2
|
||||
forward 2
|
||||
forward 7
|
||||
forward 8
|
||||
down 2
|
||||
up 8
|
||||
forward 4
|
||||
down 4
|
||||
forward 7
|
||||
down 6
|
||||
down 7
|
||||
forward 5
|
||||
down 5
|
||||
forward 1
|
||||
down 8
|
||||
forward 6
|
||||
down 1
|
||||
forward 3
|
||||
up 3
|
||||
down 7
|
||||
down 2
|
||||
up 4
|
||||
down 3
|
||||
up 2
|
||||
up 8
|
||||
down 2
|
||||
forward 5
|
||||
forward 3
|
||||
down 9
|
||||
down 9
|
||||
up 2
|
||||
forward 6
|
||||
forward 9
|
||||
down 1
|
||||
forward 6
|
||||
down 4
|
||||
up 2
|
||||
down 7
|
||||
down 3
|
||||
down 3
|
||||
forward 2
|
||||
down 5
|
||||
down 9
|
||||
down 7
|
||||
forward 7
|
||||
forward 9
|
||||
up 8
|
||||
down 8
|
||||
down 3
|
||||
up 5
|
||||
down 9
|
||||
forward 8
|
||||
forward 8
|
||||
down 1
|
||||
forward 5
|
||||
forward 2
|
||||
forward 7
|
||||
down 9
|
||||
down 7
|
||||
forward 6
|
||||
up 9
|
||||
forward 3
|
||||
forward 5
|
||||
up 7
|
||||
down 9
|
||||
forward 9
|
||||
forward 4
|
||||
forward 5
|
||||
forward 9
|
||||
forward 8
|
||||
forward 1
|
||||
forward 2
|
||||
forward 8
|
||||
down 7
|
||||
forward 3
|
||||
up 2
|
||||
up 7
|
||||
forward 1
|
||||
forward 3
|
||||
forward 9
|
||||
up 3
|
||||
down 2
|
||||
forward 3
|
||||
forward 6
|
||||
forward 3
|
||||
forward 3
|
||||
forward 3
|
||||
forward 1
|
||||
forward 1
|
||||
up 5
|
||||
down 5
|
||||
up 5
|
||||
down 5
|
||||
down 5
|
||||
forward 8
|
||||
forward 1
|
||||
down 4
|
||||
forward 7
|
||||
down 6
|
||||
down 1
|
||||
down 2
|
||||
down 2
|
||||
down 6
|
||||
up 8
|
||||
forward 3
|
||||
forward 2
|
||||
up 8
|
||||
up 2
|
||||
forward 1
|
||||
forward 6
|
||||
forward 5
|
||||
forward 6
|
||||
forward 7
|
||||
down 8
|
||||
forward 1
|
||||
down 4
|
||||
forward 2
|
||||
up 4
|
||||
forward 4
|
||||
down 1
|
||||
forward 5
|
||||
down 7
|
||||
forward 7
|
||||
up 7
|
||||
forward 1
|
||||
down 2
|
||||
forward 8
|
||||
forward 5
|
||||
up 8
|
||||
up 8
|
||||
up 2
|
||||
down 9
|
||||
forward 2
|
||||
down 4
|
||||
down 3
|
||||
down 5
|
||||
down 5
|
||||
down 2
|
||||
up 5
|
||||
forward 6
|
||||
up 7
|
||||
forward 8
|
||||
up 7
|
||||
down 4
|
||||
forward 1
|
||||
down 3
|
||||
forward 2
|
||||
forward 1
|
||||
down 2
|
||||
up 7
|
||||
forward 5
|
||||
up 8
|
||||
up 1
|
||||
down 4
|
||||
forward 6
|
||||
down 4
|
||||
up 9
|
||||
forward 5
|
||||
down 2
|
||||
down 7
|
||||
down 7
|
||||
forward 4
|
||||
forward 4
|
||||
forward 9
|
||||
down 1
|
||||
forward 6
|
||||
forward 1
|
||||
up 9
|
||||
forward 4
|
||||
forward 4
|
||||
forward 8
|
||||
forward 3
|
||||
forward 4
|
||||
down 3
|
||||
up 5
|
||||
up 1
|
||||
forward 3
|
||||
down 6
|
||||
down 4
|
||||
down 2
|
||||
forward 3
|
||||
forward 8
|
||||
up 6
|
||||
up 3
|
||||
forward 8
|
||||
down 3
|
||||
down 6
|
||||
forward 1
|
||||
up 7
|
||||
down 4
|
||||
down 5
|
||||
up 7
|
||||
forward 3
|
||||
up 4
|
||||
forward 9
|
||||
forward 6
|
||||
down 3
|
||||
forward 4
|
||||
down 6
|
||||
forward 1
|
||||
forward 6
|
||||
forward 4
|
||||
forward 2
|
||||
forward 1
|
||||
forward 3
|
||||
forward 1
|
||||
down 1
|
||||
down 9
|
||||
down 5
|
||||
down 7
|
||||
down 4
|
||||
down 8
|
||||
up 1
|
||||
down 6
|
||||
down 1
|
||||
forward 4
|
||||
down 9
|
||||
up 9
|
||||
down 6
|
||||
forward 6
|
||||
forward 8
|
||||
up 7
|
||||
forward 4
|
||||
down 3
|
||||
forward 9
|
||||
forward 6
|
||||
forward 8
|
||||
down 1
|
||||
up 2
|
||||
down 2
|
||||
down 8
|
||||
forward 4
|
||||
down 9
|
||||
down 3
|
||||
forward 5
|
||||
down 9
|
||||
down 4
|
||||
up 5
|
||||
down 8
|
||||
down 4
|
||||
down 9
|
||||
up 4
|
||||
down 5
|
||||
down 7
|
||||
down 3
|
||||
up 1
|
||||
up 1
|
||||
down 4
|
||||
down 6
|
||||
forward 8
|
||||
down 8
|
||||
down 6
|
||||
forward 6
|
||||
forward 9
|
||||
forward 3
|
||||
forward 3
|
||||
down 2
|
||||
down 4
|
||||
forward 3
|
||||
up 5
|
||||
up 3
|
||||
down 5
|
||||
down 1
|
||||
forward 5
|
||||
forward 7
|
||||
forward 1
|
||||
forward 4
|
||||
forward 5
|
||||
forward 1
|
||||
down 7
|
||||
down 8
|
||||
up 9
|
||||
down 8
|
||||
down 5
|
||||
up 3
|
||||
down 5
|
||||
down 5
|
||||
forward 8
|
||||
down 2
|
||||
forward 7
|
||||
forward 7
|
||||
down 1
|
||||
forward 2
|
||||
forward 7
|
||||
forward 5
|
||||
down 6
|
||||
forward 5
|
||||
down 5
|
||||
forward 4
|
||||
down 8
|
||||
forward 7
|
||||
up 5
|
||||
forward 5
|
||||
down 7
|
||||
down 7
|
||||
up 4
|
||||
forward 8
|
||||
up 1
|
||||
forward 3
|
||||
forward 7
|
||||
down 2
|
||||
forward 1
|
||||
down 4
|
||||
up 8
|
||||
forward 3
|
||||
forward 1
|
||||
forward 6
|
||||
forward 3
|
||||
up 4
|
||||
forward 3
|
||||
down 3
|
||||
forward 7
|
||||
forward 9
|
||||
forward 8
|
||||
down 6
|
||||
down 8
|
||||
up 6
|
||||
down 9
|
||||
forward 7
|
||||
forward 1
|
||||
up 4
|
||||
forward 5
|
||||
forward 8
|
||||
down 7
|
||||
down 9
|
||||
up 6
|
||||
up 6
|
||||
forward 9
|
||||
down 1
|
||||
forward 8
|
||||
down 9
|
||||
down 5
|
||||
forward 6
|
||||
forward 1
|
||||
down 4
|
||||
forward 8
|
||||
down 9
|
||||
down 4
|
||||
forward 5
|
||||
forward 7
|
||||
forward 3
|
||||
down 2
|
||||
forward 6
|
||||
forward 3
|
||||
forward 8
|
||||
down 1
|
||||
down 5
|
||||
up 6
|
||||
down 2
|
||||
down 1
|
||||
up 3
|
||||
down 7
|
||||
up 1
|
||||
forward 8
|
||||
down 6
|
||||
down 6
|
||||
forward 8
|
||||
up 3
|
||||
forward 8
|
||||
up 3
|
||||
forward 3
|
||||
forward 7
|
||||
forward 1
|
||||
down 1
|
||||
up 5
|
||||
forward 5
|
||||
forward 9
|
||||
forward 5
|
||||
forward 1
|
||||
forward 4
|
||||
down 8
|
||||
forward 2
|
||||
up 3
|
||||
forward 3
|
||||
down 9
|
||||
forward 2
|
||||
forward 6
|
||||
forward 3
|
||||
up 8
|
||||
up 1
|
||||
down 6
|
||||
forward 3
|
||||
down 4
|
||||
down 5
|
||||
forward 6
|
||||
forward 9
|
||||
down 4
|
||||
down 9
|
||||
down 7
|
||||
down 1
|
||||
up 3
|
||||
up 6
|
||||
forward 4
|
||||
forward 5
|
||||
down 1
|
||||
forward 3
|
||||
up 5
|
||||
forward 7
|
||||
down 9
|
||||
forward 5
|
||||
down 5
|
||||
down 1
|
||||
down 1
|
||||
down 1
|
||||
up 8
|
||||
down 4
|
||||
down 9
|
||||
forward 5
|
||||
down 5
|
||||
up 5
|
||||
up 3
|
||||
forward 1
|
||||
forward 7
|
||||
down 2
|
||||
forward 6
|
||||
forward 5
|
||||
up 4
|
||||
up 4
|
||||
forward 1
|
||||
down 7
|
||||
down 8
|
||||
up 3
|
||||
down 3
|
||||
up 4
|
||||
forward 2
|
||||
up 4
|
||||
up 4
|
||||
forward 8
|
||||
forward 1
|
||||
forward 2
|
||||
forward 7
|
||||
down 6
|
||||
forward 8
|
||||
forward 9
|
||||
forward 6
|
||||
forward 9
|
||||
down 3
|
||||
up 3
|
||||
forward 5
|
||||
down 1
|
||||
forward 1
|
||||
forward 4
|
||||
forward 2
|
||||
down 6
|
||||
up 7
|
||||
forward 9
|
||||
down 2
|
||||
up 5
|
||||
forward 6
|
||||
down 9
|
||||
down 6
|
||||
down 8
|
||||
forward 2
|
||||
down 7
|
||||
forward 6
|
||||
down 8
|
||||
forward 3
|
||||
forward 7
|
||||
forward 6
|
||||
down 7
|
||||
down 6
|
||||
forward 5
|
||||
up 8
|
||||
forward 6
|
||||
down 1
|
||||
up 9
|
||||
forward 6
|
||||
down 6
|
||||
down 5
|
||||
down 6
|
||||
up 2
|
||||
down 3
|
||||
down 7
|
||||
down 3
|
||||
forward 4
|
||||
up 9
|
||||
up 2
|
||||
forward 1
|
||||
forward 7
|
||||
forward 7
|
||||
forward 9
|
||||
forward 8
|
||||
forward 7
|
||||
down 3
|
||||
forward 4
|
||||
forward 8
|
||||
down 9
|
||||
forward 2
|
||||
forward 2
|
||||
up 9
|
||||
up 7
|
||||
forward 2
|
||||
down 8
|
||||
down 3
|
||||
down 1
|
||||
forward 1
|
||||
forward 3
|
||||
down 2
|
||||
forward 7
|
||||
up 4
|
||||
down 7
|
||||
down 1
|
||||
forward 8
|
||||
forward 2
|
||||
up 1
|
||||
down 5
|
||||
forward 8
|
||||
up 5
|
||||
up 7
|
||||
forward 4
|
||||
forward 7
|
||||
up 4
|
||||
up 3
|
||||
forward 5
|
||||
forward 9
|
||||
forward 1
|
||||
forward 3
|
||||
down 9
|
||||
up 2
|
||||
forward 8
|
||||
down 3
|
||||
forward 3
|
||||
forward 2
|
||||
down 8
|
||||
down 2
|
||||
down 3
|
||||
forward 1
|
||||
up 7
|
||||
down 1
|
||||
forward 3
|
||||
forward 8
|
||||
down 3
|
||||
down 9
|
||||
up 1
|
||||
down 9
|
||||
up 7
|
||||
up 7
|
||||
forward 7
|
||||
forward 7
|
||||
up 8
|
||||
down 2
|
||||
down 7
|
||||
down 1
|
||||
forward 5
|
||||
forward 5
|
||||
forward 7
|
||||
down 8
|
||||
forward 5
|
||||
down 9
|
||||
down 8
|
||||
forward 3
|
||||
up 9
|
||||
forward 3
|
||||
up 6
|
||||
forward 7
|
||||
up 7
|
||||
forward 3
|
||||
forward 2
|
||||
down 1
|
||||
down 4
|
||||
forward 1
|
||||
forward 8
|
||||
up 5
|
||||
down 5
|
||||
up 1
|
||||
down 5
|
||||
up 1
|
||||
up 6
|
||||
forward 5
|
||||
forward 5
|
||||
down 3
|
||||
down 3
|
||||
forward 2
|
||||
up 3
|
||||
up 2
|
||||
down 6
|
||||
down 5
|
||||
down 1
|
||||
down 1
|
||||
up 6
|
||||
forward 2
|
||||
forward 2
|
||||
up 4
|
||||
up 6
|
||||
up 6
|
||||
down 8
|
||||
up 2
|
||||
forward 4
|
||||
down 3
|
||||
forward 3
|
||||
up 4
|
||||
down 5
|
||||
forward 6
|
||||
forward 7
|
||||
up 6
|
||||
down 3
|
||||
down 7
|
||||
up 4
|
||||
down 2
|
||||
up 2
|
||||
forward 1
|
||||
down 8
|
||||
down 1
|
||||
down 1
|
||||
up 9
|
||||
down 1
|
||||
down 1
|
||||
up 1
|
||||
forward 8
|
||||
forward 4
|
||||
down 4
|
||||
forward 1
|
||||
down 4
|
||||
up 7
|
||||
forward 7
|
||||
forward 3
|
||||
down 4
|
||||
forward 9
|
||||
forward 1
|
||||
down 3
|
||||
down 2
|
||||
forward 7
|
||||
up 1
|
||||
forward 3
|
||||
up 3
|
||||
down 3
|
||||
down 7
|
||||
up 3
|
||||
up 4
|
||||
forward 7
|
||||
down 2
|
||||
up 2
|
||||
down 9
|
||||
up 1
|
||||
forward 3
|
||||
up 8
|
||||
up 8
|
||||
down 8
|
||||
down 1
|
||||
up 8
|
||||
up 4
|
||||
down 6
|
||||
forward 8
|
||||
Reference in new issue
Block a user