/
Lemur17
/
Course_taskes
Обзор
Документация
Войти
/
Lemur17
/
Course_taskes
Код
Запросы
0
Задачи
Пакеты
0
Релизы
0
Аналитика
Безопасность
master
Task3
31 строка
1 KB
Lemur17
update Task3
23 сен 2024, 15:29
23 сен 2024, 15:29
90fa620
Код
Авторство
О чём код?
def is_move_correct(figure, dx, dy): move_horizontal_by_any, move_horizontal_by_one = (dx >= 1 and dy == 0), (dx == 1 and dy == 0) move_vertical_by_any, move_vertical_by_one = (dy >= 1 and dx == 0), (dy == 1 and dx == 0) move_diagonal_by_any, move_diagonal_by_one = dx == dy, dx == dy == 1 if figure == 'королева' and move_diagonal_by_any and move_horizontal_by_any and move_vertical_by_any: return 'Да' elif figure == 'король' and move_diagonal_by_one and move_horizontal_by_one and move_vertical_by_one: return 'Да' elif figure == 'ладья' and move_horizontal_by_any and move_vertical_by_any: return 'Да' elif figure == 'слон' and move_diagonal_by_any: return 'Да' elif figure == 'конь' and (dx == 2 and dy == 1 or dy == 2 and dx == 1): return 'Да' elif figure == 'пешка' and move_vertical_by_one: return 'Да' else: return 'Нет' def get_delta_of_coordinates(cell1, cell2): cell1 = [ord(cell1[0]), int(cell1[1])] cell2 = [ord(cell2[0]), int(cell2[1])] return abs(cell2[0] - cell1[0]), abs(cell2[1] - cell1[1]) start_cell, end_cell = input().split('-') figure = input() delta_x, delta_y = get_delta_of_coordinates(start_cell, end_cell) print(is_move_correct(figure, delta_x, delta_y))