Məsələlər
Lines (2)
Lines (2)
В таблице из \textbf{N} строк и \textbf{N} столбцов некоторые клетки заняты шариками, другие свободны. Выбран шарик, который нужно переместить, и место, куда его переместить. Выбранный шарик за один шаг перемещается в соседнюю по горизонтали или вертикали свободную клетку. Требуется выяснить, возможно ли переместить шарик из начальной клетки в заданную, и если возможно, то найти путь из наименьшего количества шагов.
\InputFile
В первой строке находится числ \textbf{N} (2 ≤\textbf{ N }≤\textbf{ 250}), в следующих \textbf{N} строках - по \textbf{N} символов. Символом точки обозначена свободная клетка,латинской заглавной \textbf{O} - шарик, @ - исходное положение шарика, который должен двигаться, латинской заглавной \textbf{X} - конечное положение шарика.
\OutputFile
В первой строке выводится \textbf{Y}, если движение возможно, или \textbf{N}, если нет. Если движение возможно далее следут \textbf{N} строк по \textbf{N} символов - как и на вводе, но \textbf{X}, а также все точки по пути заменяются плюсами.
Giriş verilənləri #1
5 ....X .OOOO ..... OOOO. @....
Çıxış verilənləri #1
Y +++++ +OOOO +++++ OOOO+ @++++