Виталий ФармазоновУченик (99)
4 года назад
Я разобрался!
if(x1 - x2) % 2 == (y1 - y2) % 2 and x2 >(тут или равно) x1 and y2 > y1:
потому что по горизонталям (y) шашка только вверх движется,
а по вертикалям (x) движется вправо и лево, то есть шашка может
остаться на той же вертикали (т. е. равно).
Примечания
Доска имеет размер 8x8, вертикали и горизонтали нумеруются числами от 1 до 8 начиная с левого нижнего угла. Исходная и конечная клетки не совпадают.
Формат ввода
Вводится клетка, где стоит шашка, а затем клетка, куда шашка должна попасть.
Каждая клетка описывается номером вертикали, а затем номером горизонтали. Под номером вертикали имеется в виду не номер по вертикали, а номер вертикальной линии считая слева направо. Аналогичная формулировка используется для номера горизонтали: нумерация идет снизу вверх. Например, клетка A2 кодируется как 1 2.
Формат вывода
Выведите слово YES (заглавными буквами), если шашка может попасть из начальной клетки в указанную, и NO в противном случае.
я написал:
x1 = int(input())
y1 = int(input())
x2 = int(input())
y2 = int(input())
if (x1 - x2) % 2 == (y1 - y2) % 2 and x2 > x1 and y2 > y1:
print('YES')
else:
print('NO')
тест 1
входные данные:
1
1
2
2
вывод программы:
YES
тест 2
входные данные:
1
1
8
7
вывод программы:
NO
пишут неправильное решение!
не пойму! что не так?!