adventofcode-2022/08/solve02.py

44 lines
937 B
Python
Raw Normal View History

2022-12-08 20:58:50 +01:00
#/usr/bin/env python
grid = []
def check_scenic(grid, x, y):
v = grid[x][y]
# check up
s_up = 0
for i in reversed(range(x)):
s_up += 1
if grid[i][y] >= v:
break
# check down
s_down = 0
for i in range(x+1, len(grid)):
s_down += 1
if grid[i][y] >= v:
break
# check left
s_left = 0
for i in reversed(range(y)):
s_left += 1
if grid[x][i] >= v:
break
# check right
s_right = 0
for i in range(y+1, len(grid[0])):
s_right += 1
if grid[x][i] >= v:
break
return s_up * s_down * s_right * s_left
with open("input.txt", "r") as f:
for line in f:
grid.append([int(c) for c in line.strip()])
scenic_score = []
for x in range(0, len(grid)):
for y in range(0, len(grid[0])):
scenic_score.append(check_scenic(grid, x, y))
print(max(scenic_score))