Problem B: Minesweeper

UVA一道简单的编程题,,关于扫雷的,居然出错,郁闷了一下,自己试明明是对的



Have you ever played Minesweeper? It's a cute little game which comes within a certain Operating System which name we can't really remember. Well, the goal of the game is tofind where are all the mines within a MxN field. To help you, the game shows a numberin a square which tells you how many mines there are adjacent to that square. For instance,supose the following 4x4 field with 2 mines (which are represented by an * character):

*...
....
.*..
....
If we would represent the same field placing the hint numbers described above, we would end up with:
*100
2210
1*10
1110
As you may have already noticed, each square may have at most 8 adjacent squares.

The Input

The input will consist of an arbitrary number of fields. The first line of each field containstwo integers n and m (0 < n,m <= 100) which stands for the number of lines and columns of the fieldrespectively. The next n lines contains exactly m characters and represent the field. Each safesquare is represented by an "." character (without the quotes) and each mine square is representedby an "*" character (also without the quotes). The first field line where n = m = 0 represents the end of input and should not be processed.

The Output

For each field, you must print the following message in a line alone:

Field #x:
Where x stands for the number of the field (starting from 1). The next n lines shouldcontain the field with the "." characters replaced by the number of adjacent minesto that square. There must be an empty line between field outputs.

Sample Input

4 4
*...
....
.*..
....
3 5
**...
.....
.*...
0 0

Sample Output

Field #1:
*100
2210
1*10
1110

Field #2:
**100
33200
1*100


你可能感兴趣的:(编程,System,input,character,each,Numbers)