#!/usr/bin/python3 import fileinput grid = [] def isVisible(x, y): global grid if x == 0 or y == 0: return True if y == len(grid) - 1: return True if x == len(grid[y]) - 1: return True # Check north ht = grid[y][x] for y1 in range(y - 1, -1, -1): if grid[y1][x] >= ht: break else: return True # Check south for y1 in range(y + 1, len(grid), 1): if grid[y1][x] >= ht: break else: return True # Check east for x1 in range(x + 1, len(grid[y]), 1): if grid[y][x1] >= ht: break else: return True # Check west for x1 in range(x - 1, -1, -1): if grid[y][x1] >= ht: break else: return True # Nowhere left to check return False for line in fileinput.input(): row = [] for t in line.rstrip(): row.append(int(t)) grid.append(row) visible = 0 for y in range(0, len(grid)): for x in range(0, len(grid[y])): if isVisible(x, y): visible += 1 print(visible)