FZU 1056扫雷游戏
来源:互联网 发布:java获取list泛型类型 编辑:程序博客网 时间:2024/05/18 09:19
Description
扫雷是Windows自带的游戏。游戏的目标是尽快找到雷区中的所有地雷,而不许踩到地雷。如果方块上的是地雷,将输掉游戏。如果方块上出现数字,则表示在其周围的八个方块中共有多少颗地雷。
你的任务是在已知地雷出现位置的情况下,得到各个方块中的数据。
*....... “*”表示有地雷.*.. “.”表示无地雷....
经过处理应得到*10022101*101110
Input
输入有多组数据,每组数据的第一行有两个数字,m,n(0<m,n<100)表示游戏中雷区的范围为m×n。接下来m行每行有n个字符。“*” 表示有地雷,“.”表示无地雷。最后一组数据m=0,n=0表示输入结束,不需要处理。
Output
对于每组输入数据,输出结果,各方块数字间不留空格。每组结果之后有一个空行。
Sample Input
2 3
***
...
4 4
*...
....
.*..
....
0 0
Sample Output
***
232
*100
2210
1*10
1110
统计周围的雷数,简单题
#include<cstdio>#include<cstring>#include<algorithm>using namespace std;const int maxn=1e2+5;int T,n,m,f[maxn][maxn],ans[maxn][maxn];char s[maxn];int a[8]={1,1,1,-1,-1,-1,0,0};int b[8]={1,-1,0,1,-1,0,1,-1};int main(){while (~scanf("%d%d",&n,&m),n+m){memset(f,0,sizeof(f));memset(ans,0,sizeof(ans));for (int i=1;i<=n;i++){scanf("%s",s+1);for (int j=1;j<=m;j++) if (s[j]=='*') f[i][j]=1;}for (int i=1;i<=n;i++){for (int j=1;j<=m;j++){for (int k=0;k<8;k++){ans[i][j]+=f[i+a[k]][j+b[k]];}}}for (int i=1;i<=n;i++){for (int j=1;j<=m;j++){if (f[i][j]) printf("*");else printf("%d",ans[i][j]);}printf("\n");}printf("\n");}return 0;}
0 0
- FZU 1056 扫雷游戏
- FZU 1056 扫雷游戏
- FZU 1056扫雷游戏
- FZU 1056 扫雷游戏
- FZU 1056 扫雷游戏
- FZU 1056之扫雷游戏
- FZU 1056 扫雷游戏(简单题目)
- FZU Problem 1920 Left Mouse Button[dfs ||bfs,扫雷游戏]
- Problem 1056 扫雷游戏
- FOJ 1056之扫雷游戏
- foj 1056 扫雷游戏【递归】
- 扫雷游戏
- 扫雷游戏
- 扫雷游戏
- 扫雷游戏
- 扫雷游戏
- 扫雷游戏
- 扫雷游戏
- Codeforces 27B Tournament(dfs,判断有向图中点的连通性)
- lua 实现类继承和覆盖
- 本地虚拟机Ubuntu14.04系统和宿主机Windows系统通信问题(java编写的socket通信)
- 笔试题:计算机网络 (1)
- Date Calender的问题
- FZU 1056扫雷游戏
- 逻辑地址、线性地址、物理地址和虚拟地址
- python的os模块fork、wait、system、exec、popen、exit函数讲解
- 【bzoj 2821】 作诗 题意&题解&代码(C++)
- hibernate查询方式
- IOS学习博客地址
- 227. Basic Calculator II LeetCode
- 安装APK运行Genymation时报错:Installation failed with message INSTALL_FAILED_CPU_ABI_INCOMPATIBLE.
- banner图片自适应