Решить задачу на языке Питон " Шахматный ферзь ходит по диагонали, горизонтали или вертикали. Даны две различные клетки шахматной доски, определите, может ли ферзь попасть с первой клетки на вторую одним ходом. Программа получает на вход четыре числа от 1 до 8 каждое, задающие номер столбца и номер строки сначала для первой клетки, потом для второй клетки. Программа должна вывести YES, если из первой клетки ходом ферзя можно попасть во вторую или NO в противном случае.
Answers & Comments
Verified answer
Проверить, что две клетки стоят в одной строке или в одно строке, просто: надо проверить, что равны соответствующие иксы или игреки. Немного сложнее проверить, что две клетки стоят на одной диагонали. Так будет, если |x1 - x2| = |y1 - y2|.
Код:
# python 3x1, y1 = map(int, input().split())
x2, y2 = map(int, input().split())
in_one_row = x1 == x2
in_one_col = y1 == y2
in_one_diag = x1 - x2 == y1 - y2 or x1 - x2 == y2 - y1
if in_one_row or in_one_col or in_one_diag:
print("YES")
else:
print("NO")