Условие:
Лабиринт представляет собой прямоугольное поле из клеток, размеры лабиринта N строк и M столбцов. Проходимые клетки обозначены 0, непроходимые 1. Путник находится в начальной клетке (x1, y1) и хочет попасть в конечную (x2, y2) (обе клетки проходимы). За какое минимальное количество шагов он может это сделать, если может двигаться по проходимым клеткам, на одну клетку по вертикали или горизонтали, и не более одного раза прыгнуть как конь? За пределы лабиринта выходить нельзя.
Входные данные
В первой строке даны N M x1 y1 x2 y2 – натуральные числа, разделённые пробелом. 1 ≤ (x1, x2) ≤ N ≤ 1000, 1 ≤ (y1, y2) ≤ M ≤ 1000.
В каждой из следующих N строк даны по M чисел, равных 0 или 1 – информация о проходимости клеток в строке лабиринта.
Выходные данные
Минимальное количество шагов путника от начальной до конечной клетки, или -1, если пути не существует.
