Несложная задача про написание обхода в ширину, на которой можно потренировать и применить несколько трюков. Читаем условие: В этой задаче нужно построить кратчайший путь, поэтому это явно поиск в ширину или BFS. Этот алгоритм подробно разбирали при решении Задачи 127. Путь. Если вы с ним не знакомы, то рекомендую сначала прочитать тот разбор. По условию задачи, поле очень маленькое (помним, что алгоритм BFS работает за линейное время от количества вершин и рёбер в графе, то есть O(V + E)). Поэтому, в качестве разнообразия, напишем поиск в ширину без использования очереди, пожертвовав алгоритмической оптимальностью. Но для начала надо считать данные: Писать поиск в ширину на строках очень неудобно, поэтому заведём числовой двумерный массив. А также воспользуемся барьерным методом - сделаем массив на два ряда больше в каждую сторону (которые заполнил стенками), тогда ни один ход коня не приведёт к выходу за границы массива. Два конца пути, заданные во входных данных обработаем следующим