Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- N, M = map(int, input().split())
- rip = []
- name = []
- length = []
- name_index = 0
- index = 0
- arr = [0] * N
- for i in range(N):
- arr[i] = [""] * M
- for j in range(M):
- arr[i][j] = input()
- everything = []
- for i in range(N):
- for j in range(M):
- if ord(arr[i][j]) != 46:
- everything.append((arr[i][j]))
- for i in range(1, N - 1):
- for j in range(1, N - 1):
- if ord(arr[i][j]) != 36:
- num = 0
- if arr[i + 1][j] == arr[i][j]:
- num += 1
- if arr[i][j + 1] == arr[i][j]:
- num += 1
- if arr[i - 1][j] == arr[i][j]:
- num += 1
- if arr[i][j - 1] == arr[i][j]:
- num += 1
- if num > 2:
- rip.append(arr[i][j])
- if arr[i + 1][j] != arr[i][j] and ord(arr[i + 1][j]) != 46:
- rip.append(arr[i][j])
- if arr[i][j + 1] != arr[i][j] and ord(arr[i][j + 1]) != 46:
- rip.append(arr[i][j])
- if arr[i - 1][j] == arr[i][j] and ord(arr[i - 1][j]) != 46:
- rip.append(arr[i][j])
- if arr[i][j - 1] == arr[i][j] and ord(arr[i][j - 1]) != 46:
- rip.append(arr[i][j])
- for i in range(1, N - 1):
- if ord(arr[i][0]) != 36:
- num = 0
- if arr[i - 1][0] == arr[i][0]:
- num += 1
- if arr[i + 1][0] == arr[i][0]:
- num += 1
- if arr[i][1] == arr[i][0]:
- num += 1
- if not arr[i][0] in rip and num > 2:
- rip.append(arr[i][0])
- if arr[i - 1][0] != arr[i][j] and ord(arr[i - 1][0]) != 46:
- rip.append(arr[i][j])
- if arr[i + 1][0] == arr[i][j] and ord(arr[i + 1][0]) != 46:
- rip.append(arr[i][j])
- if arr[i][1] == arr[i][j] and ord(arr[i][1]) != 46:
- rip.append(arr[i][j])
- for i in range(1, N - 1):
- if ord(arr[i][j]) != 36:
- num = 0
- if arr[i - 1][M] == arr[i][M]:
- num += 1
- if arr[i + 1][M] == arr[i][M]:
- num += 1
- if arr[i][M - 1] == arr[i][M]:
- num += 1
- if not arr[i][j] in rip and num > 2:
- rip.append(arr[i][M])
- if arr[i - 1][M] != arr[i][j] and ord(arr[i - 1][M]) != 46:
- rip.append(arr[i][j])
- if arr[i + 1][M] == arr[i][j] and ord(arr[i + 1][M]) != 46:
- rip.append(arr[i][j])
- if arr[i][M - 1] == arr[i][j] and ord(arr[i][M - 1]) != 46:
- rip.append(arr[i][j])
- for i in range(1, M - 1):
- if ord(arr[i][j]) != 36:
- num = 0
- if arr[0][i + 1] == arr[0][i]:
- num += 1
- if arr[0][i - 1] == arr[0][i]:
- num += 1
- if arr[1][i] == arr[0][i]:
- num += 1
- if not arr[i][j] in rip and num > 2:
- rip.append(arr[0][i])
- if arr[0][i + 1] != arr[i][j] and ord(arr[0][i + 1]) != 46:
- rip.append(arr[i][j])
- if arr[0][i - 1] == arr[i][j] and ord(arr[0][i - 1]) != 46:
- rip.append(arr[i][j])
- if arr[1][i] == arr[i][j] and ord(arr[1][i]) != 46:
- rip.append(arr[i][j])
- for i in range(1, M - 1):
- if ord(arr[i][j]) != 36:
- num = 0
- if arr[N][i + 1] == arr[N][i]:
- num += 1
- if arr[N][i - 1] == arr[N][i]:
- num += 1
- if arr[N - 1][i] == arr[N][i]:
- num += 1
- if not arr[i][j] in rip and num > 2:
- rip.append(arr[N][i])
- if arr[N][i + 1] != arr[i][j] and ord(arr[N][i + 1]) != 46:
- rip.append(arr[i][j])
- if arr[N][i - 1] == arr[i][j] and ord(arr[N][i - 1]) != 46:
- rip.append(arr[i][j])
- if arr[N - 1][i] == arr[i][j] and ord(arr[N - 1][i]) != 46:
- rip.append(arr[i][j])
- if len(everything) == 1:
- if len(rip) == 1:
- print("NO")
- exit(0)
- else:
- print("YES")
- print(everything, 1)
- exit(0)
- everything.sort()
- for i in range(len(everything)):
- if everything[i] == everything[i - 1]:
- length[index] += 1
- else:
- index += 1
- name_index += 1
- name[name_index] = everything[i]
- index = 0
- length[index] += 1
- for i in range(len(length)):
- print(name[i], length[i])
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement