1 solutions
-
0
模拟()
- 枚举每个位置,统计非地雷点的地雷个数,然后输出。
#include<bits/stdc++.h> using namespace std; int dx[]={-1,1,0,0,-1,-1,1,1}; int dy[]={0,0,-1,1,-1,1,-1,1}; //相邻的方向 const int N=110; char g[N][N]; int main() { int n,m; cin>>n>>m; for(int i=1;i<=n;i++) //获取地图 { for(int j=1;j<=m;j++) { cin>>g[i][j]; } } for(int i=1;i<=n;i++) { for(int j=1;j<=m;j++) { int cnt=0; //地雷个数 if(g[i][j]=='*') cout<<"*"; //地雷 else //枚举周围的点,计算地雷个数 { for(int k=0;k<8;k++) { int a=i+dx[k],b=j+dy[k]; if(g[a][b]=='*') cnt++; } cout<<cnt; } } cout<<endl; } return 0; }
- 1
Information
- ID
- 1048
- Time
- 1000ms
- Memory
- 256MiB
- Difficulty
- 10
- Tags
- # Submissions
- 7
- Accepted
- 2
- Uploaded By