Сапер
면접 대비시간 제한2초메모리 제한1024 MB
검은 칸에만 지뢰를 놓아 나머지 검은 칸이 인접 지뢰 수를 숫자로 표시하도록 만들고, 불가능하면 No solution을 출력합니다.
문제
Мальчику Васе очень нравится известная игра <<Сапер>>. В нее играет один человек. Игра идет на клетчатом поле размером ( строк, столбцов). В некоторых клетках поля стоят мины. В каждой из остальных клеток записано либо число от 1 до 8 --- количество мин в соседних с ней клетках, либо ничего не написано --- это означает, что в соседних клетках мин нет. Клетки являются соседними, если они имеют хотя бы одну общую вершину. В одной клетке не может стоять более одной мины. Будем называть поле с расположенными на нем минами и числами картой.
Изначально все клетки поля закрыты. Игрок за один ход может открыть какую-нибудь клетку. После этого игроку показывается содержимое этой клетки, и если в открытой им клетке оказывается мина, он проигрывает. В противном случае игра продолжается. Цель игры --- открыть все клетки, в которых нет мин.
У Васи на компьютере есть эта игра, но ему кажется, что все карты, которые в ней есть, некрасивые и неинтересные. Поэтому он решил нарисовать свои. При этом он хочет, чтобы карты, которые он нарисует, после того, как они будут открыты, выглядели красиво.
У Васи есть рисунки, нарисованные на клетчатой бумаге следующим образом: некоторые клетки закрашены в черный цвет, а некоторые оставлены белыми. Вася хочет по каждому такому рисунку сделать соответствующее ему поле для игры в <<Сапера>> по следующему правилу: если на рисунке клетка покрашена в черный цвет, то на этом месте должна быть либо мина, либо число от 1 до 8, если же клетка оставлена белой, то на игровом поле она должна быть пустой.
Напишите программу, которая сделает это за Васю.
입력
В первой строке входного файла содержатся числа и () --- количество строк и столбцов соответственно. Далее идет таблица из строк, по чисел в каждой строке, задающая Васин рисунок. Каждое число в таблице равно 0 или 1, число 0 означает, что соответствующая клетка на рисунке белая, 1 --- черная. Числа в строках разделяются пробелами.
출력
Выходной файл должен содержать строк по символов --- карту игрового поля, -ый символ -ой строки должен содержать символ <<*>> (звездочка) если в клетке стоит мина, цифру от 1 до 8, если в этой клетке стоит соответствующее число, либо <<.>> (точка), если клетка пустая. Символы пробелами не разделяйте.
Если построить поле, соответствующее рисунку, невозможно, выходной файл должен содержать одну строку с сообщением <<No solution>>.