printРабочее место участника

printЗадачи

1314. Горец

Ограничения: время – 500ms/1000ms, память – 64MiB Ввод: input.txt или стандартный ввод Вывод: output.txt или стандартный вывод copy
Послать решение Blockly Посылки Темы Где Обсудить (0)

На доске размером 4x4 расставлены несколько фишек. Существует два вида возможных ходов:
  • передвинуть фишку на соседнюю свободную клетку по горизонтали или вертикали;
  • перепрыгнуть фишкой через соседнюю фишку по горизонтали или вертикали на свободное поле за ней; при этом фишка, через которую перепрыгнули, снимается с доски.
Напишите программу, определяющую минимальное количество ходов для некоторой заданной позиции, чтобы на доске осталась только одна фишка.
Входной файл содержит 4 строки длиной 4 символа – начсальное состояние доски. Символ '*' означает клетку с фишкой, символ '.' – пустую клетку. По крайней мере одна клетка пустая, и на доске есть хотя бы одна фишка.
Вывести одно целое число – минимальное число ходов для получения на доске одной фишки.

Пример ввода

....
***.
....
....

Пример вывода

3
loading