Можно ли ферзю попасть с одной клетки на другую за один ход, учитывая, что ферзь ходит по диагонали, горизонтали

Можно ли ферзю попасть с одной клетки на другую за один ход, учитывая, что ферзь ходит по диагонали, горизонтали или вертикали? Укажите, возможно ли это. Данные вводятся в следующем формате: четыре числа от 1 до 8, которые представляют номер столбца и номер строки для первой и второй клетки соответственно. Выведите "yes", если ферзь может попасть во вторую клетку ходом, и "no" в противном случае. Пример ввода 1: 1 1 2 2 Пример вывода 1: yes Пример ввода 2: 1 1 2 3 Пример вывода 2: no
Ариана

Ариана

Ферзь может попасть с одной клетки на другую за один ход, если и только если обе клетки находятся на одной диагонали, горизонтали или вертикали. Обозначим номер столбца первой клетки как x1, номер строки первой клетки как y1, номер столбца второй клетки как x2, и номер строки второй клетки как y2.

Проверим условие для каждого из трех возможных ходов ферзя:

1. Если (x1 = x2) или (y1 = y2), то ферзь может попасть на вторую клетку ходом по горизонтали или вертикали. В этом случае выводим "yes".

2. Если |x1 - x2| = |y1 - y2|, то ферзь может попасть на вторую клетку ходом по диагонали. В этом случае выводим "yes".

3. Во всех остальных случаях ферзь не может попасть с первой клетки на вторую за один ход. В этом случае выводим "no".

Теперь приступим к разбору примеров:

Пример ввода 1: 1 1 2 2
В этом примере x1 = 1, y1 = 1, x2 = 2, y2 = 2.
Так как |x1 - x2| = |1 - 2| = 1, и |y1 - y2| = |1 - 2| = 1, условие выполняется.
Ответ: yes

Пример ввода 2: 1 1 2 3
В этом примере x1 = 1, y1 = 1, x2 = 2, y2 = 3.
Так как |x1 - x2| = |1 - 2| = 1, и |y1 - y2| = |1 - 3| = 2, условие не выполняется.
Ответ: no
Знаешь ответ?
Задать вопрос
Привет!
hello