EduBrick

F. Голодный конь

2000 мс · 256 МБ · всё или ничего

На доске N×NN \times N в клетке (x1,y1)(x_1, y_1) стоит шахматный конь. Он хочет попасть в клетку (x2,y2)(x_2, y_2) за наименьшее число ходов.

Выведите это число и сам маршрут. Маршрутов может быть несколько; выведите лексикографически наименьший как последовательность пар координат.

Граф здесь неявный: вершины — клетки, рёбра — ходы коня. Ни списка смежности, ни матрицы строить не надо.

Формат ввода

Одна строка содержит пять чисел: NN (5≤N≤205 \le N \le 20), x1x_1, y1y_1, x2x_2, y2y_2 (1≤x1,y1,x2,y2≤N1 \le x_1, y_1, x_2, y_2 \le N).

Левая верхняя клетка имеет координаты (1,1)(1, 1).

Формат вывода

В первой строке — наименьшее число ходов KK.

В следующих K+1K + 1 строках — координаты клеток маршрута, начиная со стартовой.

Примеры

ввод
5 1 1 3 2
вывод
1
1 1
3 2
ввод
5 1 1 1 1
вывод
0
1 1
Войдите, чтобы отправлять решения.