main2.py (1165B)
1 import sys 2 3 def isVisible(lines, row, col): 4 scenic = 1 5 6 # up 7 score1 = 0 8 for x in lines[:row][::-1]: 9 score1 += 1 10 if ( x[col] >= lines[row][col]): 11 break 12 scenic *= score1 13 14 # left 15 score3 = 0 16 for x in lines[row][:col-1][::-1]: 17 score3 += 1 18 if ( x >= lines[row][col]): 19 break 20 scenic *= score3 21 22 # right 23 score4 = 0 24 for x in lines[row][col+1:]: 25 score4 += 1 26 if ( x >= lines[row][col]): 27 break 28 scenic *= score4 29 30 # down 31 score2 = 0 32 for x in lines[row:]: 33 score2 += 1 34 if ( x[col] >= lines[row][col]): 35 break 36 scenic *= score2 37 38 39 print(row, col, "|", score1, score2, score3, score4, "|", scenic) 40 return scenic 41 42 with open(sys.argv[1], "r") as file: 43 lines = file.readlines() 44 for a in range(len(lines)): 45 lines[a] = lines[a].rstrip() 46 # a = a.rstrip() 47 48 best=0 49 for row in range(len(lines)): 50 for col in range(len(lines[0])): 51 # print(lines[row][col], end="") 52 yes = isVisible(lines, row, col) 53 best = max(best, yes) 54 55 print(best)