Advertisement
bl00dt3ars

05. Dots

Jun 7th, 2021
100
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 1.80 KB | None | 0 0
  1. n = int(input())
  2. dots_list = []
  3. result = 0
  4. for _ in range(n):
  5.     dots_list.append(list(input().split()))
  6. for i in range(len(dots_list)):
  7.     for j in range(len(dots_list[i])):
  8.         if dots_list[i][j] == '.':
  9.             initial_position = [i, j]
  10.             position = initial_position
  11.             previous_positions = []
  12.             counter = 0
  13.             while True:
  14.                 row = position[0]
  15.                 place = position[1]
  16.                 if dots_list[row][place] == '-':
  17.                     break
  18.                 if not place == len(dots_list[row]) - 1 and dots_list[row][place + 1] == '.' and not [row, place + 1] in previous_positions:   # scan right
  19.                     previous_positions.append([row, place])
  20.                     position = [row, place + 1]
  21.                 elif not place == 0 and dots_list[row][place - 1] == '.' and not [row, place - 1] in previous_positions:   # scan left
  22.                     previous_positions.append([row, place])
  23.                     position = [row, place - 1]
  24.                 elif not row == 0 and dots_list[row - 1][place] == '.' and not [row - 1, place] in previous_positions:   # scan up
  25.                     previous_positions.append([row, place])
  26.                     position = [row - 1, place]
  27.                 elif not row == len(dots_list) - 1 and dots_list[row + 1][place] == '.' and not [row + 1, place] in previous_positions:   # scan down
  28.                     previous_positions.append([row, place])
  29.                     position = [row + 1, place]
  30.                 else:
  31.                     dots_list[row][place] = '-'
  32.                     counter += 1
  33.                     position = initial_position
  34.                     previous_positions = []
  35.                 if counter > result:
  36.                     result = counter
  37. print(result)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement