-->
当前位置:首页 > 题库 > 正文内容

编程题:h0038. 扫雷游戏

Luz3年前 (2022-02-14)题库1005
扫雷游戏是在n * n的网格上进行的。在这个网格中隐藏着m个地雷,每个地雷都位于不同的网格位置。玩家反复触碰网格位置。如果触碰到一个有地雷的位置,地雷就会爆炸,玩家就输了。如果触及不包含地雷的位置,则会出现0到8之间的整数,表示包含地雷的相邻或对角线相邻网格位置的数量。部分博弈中的一系列走法如下图所示。

![sweep.png](~/41959469-9a8e-4a4f-bfea-5fc72e8c6313.png)

这里,n是8,m是10,空白方块代表整数0,凸起的方块代表未发挥的位置,类似星号的数字代表地雷。最左边的图像代表部分游戏。从第一张图像到第二张图像,玩家已经走了两步,每次都选择了一个安全的网格位置。从第二个图像到第三个图像,玩家就没那么幸运了;他选了一个有地雷的位置,因此输了。如果玩家继续采取安全的行动,直到剩下的位置都没有了,他就赢了;这些必须遏制地雷。
你的工作是阅读部分游戏的信息,并打印相应的网格。

### 输入格式:

输入的第一行包含一个正整数n(n<=10)。接下来的n行表示地雷的位置。每一行用n个字符表示一行的内容: 句号表示未挖掘的位置,星号表示已挖掘的位置。接下来的n行每n个字符长: 触及的位置用x表示,未触及的位置用句点表示。示例输入对应于上面的中间图。

### 输出格式:

输出网格,并适当地填写每个位置。被触碰过且不包含地雷的位置应该包含0到8之间的整数。如果地雷被触碰,所有有地雷的位置都应加星号。所有其他位置都应该包含一个句号。

### 输入样例:

in
8
...**..*
......*.
....*...
........
........
.....*..
...**.*.
.....*..
xxx.....
xxxx....
xxxx....
xxxxx...
xxxxx...
xxxxx...
xxx.....
xxxxx...


### 输出样例:

out
001.....
0013....
0001....
00011...
00001...
00123...
001.....
00123...







答案:若无答案欢迎评论

发表评论

访客

◎欢迎参与讨论,请在这里发表您的看法和观点。