Сапёр
(Время: 1 сек. Память: 16 Мб Сложность: 47%)
Однажды Ромка поспорил с Виталькой, что сможет выиграть в игру Сапёр быстрее, чем за 5 секунд. Напомним, что в данной игре предлагается разминировать поле N×M клеток, в котором расположены мины. Когда игрок открывает какую-то клетку, он может увидеть в ней цифру, равную количеству мин в соседних клетках, саму мину или пустую клетку. В последнем случае соседние клетки открываются по таким же правилам. Клетки считаются соседними, если они имеют общую сторону или угол.
Виталька не доверяет компьютерам, поэтому сам нарисовал поле и расставил мины. А так как Виталька ещё и не умеет программировать, он просит вас написать программу, выводящую поле после первого хода Ромки.
Входные данные
Первая строка входного файла INPUT.TXT содержит целые числа N и M (10 ≤ N, M ≤ 100) – размеры игрового поля.
Следующие N строк содержат по M символов, описывающих поле: пустая клетка обозначается символом «.», а мина символом «*».
В последней строке заданы x и y – координаты первого хода (1 ≤ x ≤ N, 1 ≤ y ≤ M).
Выходные данные
В выходной файл OUTPUT.TXT выведите поле после первого хода. Для обозначения мин и пустых клеток всё также используйте символы «*» и «.», соответственно. Для не открывшихся ячеек используйте символ «?». Для обозначения количества соседних мин, если они есть, используйте цифры от 1 до 8.
Примеры
№ | INPUT.TXT | OUTPUT.TXT |
1 | 10 10
....*.....
.......*..
.*.....*..
.....*....
...*......
.....*.*..
..........
..*.......
..........
..........
10 10 | ????????1.
????????2.
????????2.
112?????1.
..1?????1.
..1?????1.
.11111211.
.1?1......
.111......
.......... |
2 | 10 10
....*.....
.......*..
.*.....*..
.....*....
...*......
.....*.*..
..........
..*.......
..........
..........
2 9 | ??????????
????????2?
??????????
??????????
??????????
??????????
??????????
??????????
??????????
?????????? |
Для отправки решения задачи необходимо зарегистрироваться и авторизоваться!
|