L. Игрушечный лабиринт
3000 мс · 256 МБ · всё или ничего
Лабиринт — прямоугольная коробка с препятствиями и отверстиями; внутри катается шарик. Лабиринт наклоняют влево, вправо, вверх или вниз, и шарик едет в этом направлении до ближайшего препятствия или стенки.
Если по пути шарик встречает отверстие, он проваливается — останавливаться в отверстии не обязательно.
Шарик начинает в левом верхнем углу. Найдите наименьшее число наклонов, чтобы он выпал.
Вершина здесь — клетка, в которой шарик остановился, а ребро — один наклон. Соседей всего четыре, и каждый вычисляется прокруткой до упора.
Формат ввода
Первая строка содержит числа и ().
Далее идут строк по чисел: 0 — свободно, 1 — препятствие, 2 — отверстие. Левый верхний угол свободен, и решение существует.
Формат вывода
Одно число — наименьшее количество наклонов.
Примеры
ввод
4 5 0 0 0 0 1 0 1 1 0 2 0 2 1 0 0 0 0 1 0 0
вывод
3
ввод
1 2 0 2
вывод
1
Войдите, чтобы отправлять решения.