21 lines
528 B
Python
21 lines
528 B
Python
|
#!/usr/bin/env python
|
||
|
|
||
|
def count_trees(right, down, lines):
|
||
|
n = 0
|
||
|
for i, line in enumerate(lines[::down]):
|
||
|
c = line[(i*right) % len(line)]
|
||
|
if c == '#':
|
||
|
n += 1
|
||
|
return n
|
||
|
|
||
|
if __name__ == '__main__':
|
||
|
with open('input.txt', 'r') as f:
|
||
|
lines = [line.strip() for line in f.readlines()]
|
||
|
|
||
|
print(count_trees(3, 1, lines))
|
||
|
|
||
|
hits_multiplied = 1
|
||
|
for slope in ((1,1), (3,1), (5,1), (7,1), (1,2)):
|
||
|
hits_multiplied *= count_trees(*slope, lines)
|
||
|
print(hits_multiplied)
|