Files
AdventOfCode/AoC2020/code/AoC03.py
T

42 lines
937 B
Python

# count trees when going 1 down and 2 right
def tree_count(ls):
x = 0
trees = 0
for y, line in enumerate(ls):
if line[x] == '#':
trees += 1
x = (x + 3) % (len(line) - 1)
return trees
# count trees when going dx right and dy down
def tree_count2(ls, dx, dy):
x = 0
y = 0
trees = 0
while True:
try:
if ls[y][x] == '#':
trees += 1
x = (x + dx) % (len(ls[y]) - 1)
y = y + dy
except IndexError:
break
return trees
with open(r"C:\Users\Maya\Desktop\Uni\WS_2021\AoC\input03") as f:
lines = f.readlines()
# Count trees on way down
print(tree_count(lines))
# Multiply trees on different slopes
print(tree_count2(lines, 1, 1) *
tree_count2(lines, 3, 1) *
tree_count2(lines, 5, 1) *
tree_count2(lines, 7, 1) *
tree_count2(lines, 1, 2))