Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- a = [[int(j) for j in input().split()] for i in range(8)]
- # Для каждой строки повторяем следующие два шага:
- for i in range(8):
- # 1. Определяем, какой должен быть у строки цвет. Нас не интересуют вертикальные
- # разноцветные кости (a[i][j] == -a[i+1][j]), потому что они могут принять
- # любой цвет в строке. Любая другая кость однозначно определяет цвет всей строки.
- white = black = False
- for j in range(8):
- if i == 7 or a[i][j] != -a[i + 1][j]:
- if a[i][j] > 0:
- white = True
- else:
- black = True
- # Нашли противоречивые цвета в строке - пишем NO и заканчиваем
- if white and black:
- print("NO")
- break
- # Если не нашли противоречий до самой последней строки - победа
- if i == 7:
- print("YES")
- break
- # 2. Переворачиваем разноцветные вертикальные кости (пропущенные на шаге 1),
- # которые не соответствуют цвету текущей строки
- for j in range(8):
- if a[i][j] == -a[i + 1][j] and (a[i][j] > 0) == black:
- a[i][j], a[i + 1][j] = a[i + 1][j], a[i][j]
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement