MInesweeper
输入:
4 4
*...
....
.*..
....
3 5
**...
.....
.*...
0 0
输出:
Field #1:
*100
2210
1*10
1110
Field #2:
**100
33200
1*100
思路1:利用for循环写一个函数:
for(int i=x;i<x+2;i++){
for(int k=y;k<y+2;k++){
if ( i >= 0 && i < X && j >= 0 && j < Y && b[i][j] != ‘*’ )
b[i][j] += 1;}}
免去了一个一个判断 移动的麻烦
思路2:利用数组代表移位
arrayx={1,1,1,-1,-1,-1,0,0}
对应array y
arrayy={1,0,-1,1,0,-1,1,-1}
此时需要for 循环
for(int i=0;i<8;i++){
xnext=x+arrayx[i];
ynext=y+arrayy[i];
…}