ГлавнаяСборникиТурнирыРазделыФорумыУчастникиПечатьПомощьО системе

Разделы > Неотсортированные > задача:


Лабиринт

Задачи раздела

• Коллекционные карты
• Компоненты сильной связности
• Конец света
• Кот в рыбном магазине
• Красивые часы — 1
• Красивые часы — 2
• Кубок практики ИВТ
• Купим золото дорого
• Лабиринт
• Лабиринт
• Ларьки
• Ларьки
• Левый двоичный поиск
• Лес и поле
• Лесенка
• Линейный поиск
• Листья

Обратная связь

Если у вас есть предложения или пожелания по работе Contester, посетите форум сайта www.contester.ru.

Лимит времени 2000/2000/2000/2000 мс. Лимит памяти 65536/65536/65536/65536 Кб.

Лабиринт
Лабиринт
ограничение по времени на тест
2 секунды
ограничение по памяти на тест
64 мегабайта
ввод
стандартный ввод
вывод
стандартный вывод

Вам дана карта лабиринта. Вы находитесь в левой верхней клетке и хотите попасть в правую нижнюю. Перемещаться можно только в соседние по стороне свободные клетки.

Выведите кратчайший путь через лабиринт. Гарантируется, что такой путь существует.

Входные данные

Первая строка содержит целые числа H и W (2 ≤ H, W ≤ 100) — соответственно высоту и ширину лабиринта.

Следующие H строк описывают лабиринт. Каждая из них содержит W символов '.' или '#'. Символ '.' обозначает свободную клетку, символ '#' — непроходимую клетку.

Выходные данные

Выведите H строк по W символов в каждой — описание лабиринта, аналогичное таковому во входных данных, с помеченным символами '+' кратчайшим путём от левой верхней клетки до правой нижней.

Примеры

Входные данные
5 6
......
#####.
......
.#.###
......
Выходные данные
++++++
#####+
..++++
.#+###
..++++
Входные данные
6 7
.......
.##.##.
..#..#.
.###.#.
...#.##
.#.#...
Выходные данные
++++...
.##+##.
..#++#.
.###+#.
...#+##
.#.#+++
Входные данные
3 13
.#.#...#.#...
.#...#...#.#.
...#.#.#...#.
Выходные данные
+#.#+++#.#+++
+#+++#+++#+#+
+++#.#.#+++#+
Для отправки решений необходимо выполнить вход.

www.contester.ru