eolymp
bolt
Try our new interface for solving problems
Problems

Выход из лабиринта

Выход из лабиринта

Во время торнадо в Костромской области было повалено большое количество деревьев. Однажды утром, спустя пару дней после торнадо, мальчик Илья вышел прогуляться и увидел, что поваленные деревья образовывали настоящий лабиринт. Илья очень обрадовался, стал гулять и играть в лабиринте. Внезапно ему позвонил преподаватель и поинтересовался, почему он давно не видел Илью. Чтобы не получить дырку в бейджик за самовольный выход за территорию лагеря, Илья, конечно же, хотел попасть в домик как можно скорее, но и побродить по лабиринту ему тоже хотелось. Помогите ему узнать, как быстро он сможет добраться до домика. \InputFile В первой строке входного файла заданы целые положительные числа \textbf{N} и \textbf{M} (\textbf{1} ≤ \textbf{N}, \textbf{M} ≤ \textbf{1000}). В следующих \textbf{N} строках заданы по \textbf{M} символов, описывающих лабиринт. На позициях, по которым Илья может перемещаться, записан символ "\textbf{0}", а на позициях, которые перегорожены деревьями, записан символ "\textbf{1}". После описания лабиринта следуют целые числа \textbf{x_1}, \textbf{y_1}, \textbf{x_2}, \textbf{y_2} - координаты (то есть соответствующие номера столбцов и строк) Ильи и его домика (\textbf{1} ≤ \textbf{x_1}, \textbf{x_2} ≤ \textbf{M}, \textbf{1} ≤ \textbf{y_1}, \textbf{y_2} ≤ \textbf{N}). \OutputFile В выходной файл выведите единственное число - длину кратчайшего пути от точки (\textbf{x_1}, \textbf{y_1}) до точки (\textbf{x_2}, \textbf{y_2}), если Илья может добраться до дому по лабиринту, и "\textbf{-1}" в противном случае.
Time limit 1 second
Memory limit 64 MiB
Input example #1
4 6
1 0 1 1 1 0
0 0 1 0 0 0
1 0 1 1 0 0
0 0 0 0 0 0
2 1
5 3
Output example #1
7