AcWing 462. 扫雷游戏——逆向扫雷(出题)
原题链接
简单
作者:
迎风飘扬
,
2022-02-10 21:53:00
,
所有人可见
,
阅读 275
此题十分简单,我就不做讲解了
#include<bits/stdc++.h>
using namespace std;
int main(){
int n,m;
char f[101][101];
cin>>n>>m;
for(int i=1;i<=n;i++)
for(int j=1;j<=m;j++)
cin>>f[i][j];
for(int i=1;i<=n;i++){
for(int j=1;j<=m;j++){
int k=0;
if(f[i][j]=='*')continue;
if(f[i-1][j]=='*')k++;//穷举8个方向
if(f[i-1][j+1]=='*')k++;
if(f[i-1][j-1]=='*')k++;
if(f[i+1][j]=='*')k++;
if(f[i+1][j-1]=='*')k++;
if(f[i+1][j+1]=='*')k++;
if(f[i][j+1]=='*')k++;
if(f[i][j-1]=='*')k++;
f[i][j]=k+'0';
}
}
for(int i=1;i<=n;i++){
for(int j=1;j<=m;j++)
cout<<f[i][j];
cout<<endl;
}
}