От нескольких источников
8000 мс · 512 МБ · всё или ничего
На поле отмечены знаком S несколько стартовых клеток. Для каждой свободной клетки посчитаем расстояние до ближайшей из них.
Выведите наибольшее из этих расстояний. Если какая-то свободная клетка недостижима ни от одного старта, выведите -1. Стартовых клеток хотя бы одна.
Формат ввода
В первой строке числа и от до . В следующих строках по символов: точки, решётки и символы S.
Формат вывода
Одно число.
Примеры
ввод
1 2 S.
вывод
1
Примечание
Запускать обход из каждого старта по отдельности не нужно. Положите в очередь сразу все старты с нулевым расстоянием — обход в ширину сам разложит поле по слоям от ближайшего источника.
Войдите, чтобы отправлять решения.