Files
advent-of-code/2022/08/part2
2022-12-08 21:44:04 +00:00

46 lines
1.1 KiB
Python
Executable File

#!/usr/bin/env python
TGRID = [] # heights
VGRID = [] # scenic score
def count_visible(x, y, xr, yr):
target = TGRID[y][x]
count = 0
for y in yr:
for x in xr:
if TGRID[y][x] >= target:
if x > 0 and y > 0:
count += 1
return count
count+=1
return count
with open('input') as f:
for line in f:
l = []
for tree in line.rstrip():
l.append(int(tree))
TGRID.append(l)
max_y = len(TGRID)
for y in range(0, max_y):
max_x = len(TGRID[y])
l = []
for x in range(0, max_x):
l.append(
count_visible(x, y, range(x, x+1), range(y-1, -1, -1)) * # north
count_visible(x, y, range(x+1, max_x), range(y, y+1)) * # east
count_visible(x, y, range(x, x+1), range(y+1, max_y)) * # south
count_visible(x, y, range(x-1, -1, -1), range(y, y+1)) # west
)
VGRID.append(l)
best_seen = 0
for y in range(0, len(VGRID)):
for x in range(0, len(VGRID[y])):
if VGRID[y][x] > best_seen:
best_seen = VGRID[y][x]
print(best_seen)