极简题解|扫雷游戏
2025-07-13 09:25:09
发布于:江苏
20阅读
0回复
0点赞
模拟即可
#include<iostream>
using namespace std;
int n,m;
int nm[110][110];
char a;
int main(){
cin>>n>>m;
for(int i=1;i<=n;i++){
for(int j=1;j<=m;j++){
cin>>a;
if(a=='*'){
nm[i][j]=9;
}
}
}
for(int i=1;i<=n;i++){
for(int j=1;j<=m;j++){
if(nm[i][j]==0){
if(nm[i-1][j-1]==9){
nm[i][j]++;
}if(nm[i-1][j]==9){
nm[i][j]++;
}if(nm[i-1][j+1]==9){
nm[i][j]++;
}if(nm[i][j-1]==9){
nm[i][j]++;
}if(nm[i][j+1]==9){
nm[i][j]++;
}if(nm[i+1][j-1]==9){
nm[i][j]++;
}if(nm[i+1][j]==9){
nm[i][j]++;
}if(nm[i+1][j+1]==9){
nm[i][j]++;
}
cout<<nm[i][j];
}else{
cout<<'*';
}
}
cout<<'\n';
}
return 0;
}
这里空空如也
有帮助,赞一个