- Описание
- Отправленные решения
418. Царь Леонид на тракторе
Царь Леонид ездит на тракторе по прямоугольному клетчатому полю размером $H \times W$. Трактор у Леонида модели «только вперёд» и не имеет руля. Когда трактор всё-таки нужно повернуть, то на помощь Леониду приходят спартанцы $-$ они поднимают трактор и поворачивают его в одном из $8$ направлений (по вертикали, горизонтали или двум диагоналям).
Местостность в окрестностях Спарты каменистая и некоторые клетки непроходимы даже на тракторе. Царь Леонид хочет торжественно проехать из одной точки поля в другую, сделав при этом наименьшее количество поворотов (силы спартанцев надо беречь для боя с Ксерксом). Изначально трактор лежит в начальной точке вверх колесами, чтобы его направить куда-либо нужно привлечь спартанцев. Направление трактора в конечной точке не имеет значения.
Формат ввода
В первой строке входного файла заданы целые числа $H$, $W$ $(1 \le H, W \le 1000)$ $-$ высота и ширина поля.
В последующих $H$ строках задано поле, блокированные клетки обозначены латинскими буквами X
, а свободные $-$ точками.
После поля следует строка с двумя целыми числами $sx$, $sy$ $(1 \le sx \le W, 1 \le sy \le H)$ $-$ координаты стартового положения трактора.
Последней строкой идут два целых числа $tx$, $ty$ $(1 \le tx \le W, 1 \le ty \le H)$ $-$ координаты конечного положения трактора.
Координаты отсчитываются от нижнего левого угла поля. Стартовое положение не совпадает с конечным. Стартовая и конечная клетки не являются заблокированными.
Формат вывода
Если пути не существует $-$ выведите одно число $-1$. Иначе выведите единственное натуральное число $-$ минимальное количество поворотов, которые спартанцы должны будут сделать по пути к конечной клетке.
Ограничения
Ограничение времени
5 с
Ограничение памяти
1 ГБ
Пример 1
5 7
XX....X
X.XXX..
..XXX.X
X.X...X
....XXX
1 1
6 5
3
Пример 2
4 3
.XX
.XX
XX.
X..
1 3
3 2
-1