Run ID | 作者 | 问题 | 语言 | 测评结果 | 分数 | 时间 | 内存 | 代码长度 | 提交时间 |
---|---|---|---|---|---|---|---|---|---|
144710 | 韩立鹏 | 扫雷游戏 | C++ | 通过 | 100 | 2 MS | 264 KB | 1956 | 2024-04-26 13:47:59 |
#include<bits/stdc++.h> using namespace std; int main() { int n,m,i,k,s;cin>>n>>m;char a[n+1][m+1]; for(i=1;i<=n;i++){ for(k=1;k<=m;k++) cin>>a[i][k]; } for(i=1;i<=n;i++){ for(k=1;k<=m;k++){ if(a[i][k]=='*') cout<<'*'; if(a[i][k]=='?'){ s=0; if(i==1&&k==1){ if(a[1][2]=='*') s++; if(a[2][1]=='*') s++; if(a[2][2]=='*') s++; cout<<s; } else if(i==1&&k==m){ if(a[1][m-1]=='*') s++; if(a[2][m-1]=='*') s++; if(a[2][m]=='*') s++; cout<<s; } else if(i==n&&k==1){ if(a[n-1][1]=='*') s++; if(a[n-1][2]=='*') s++; if(a[n][2]=='*') s++; cout<<s; } else if(i==n&&k==m){ if(a[n-1][m-1]=='*') s++; if(a[n-1][m]=='*') s++; if(a[n][m-1]=='*') s++; cout<<s; } else if(i==1&&k!=1&&k!=m){ if(a[1][k-1]=='*') s++; if(a[1][k+1]=='*') s++; if(a[2][k-1]=='*') s++; if(a[2][k]=='*') s++; if(a[2][k+1]=='*') s++; cout<<s; } else if(i==n&&k!=1&&k!=m){ if(a[n][k-1]=='*') s++; if(a[n][k+1]=='*') s++; if(a[n-1][k-1]=='*') s++; if(a[n-1][k]=='*') s++; if(a[n-1][k+1]=='*') s++; cout<<s; } else if(k==1&&i!=1&&i!=m){ if(a[i-1][1]=='*') s++; if(a[i-1][2]=='*') s++; if(a[i][2]=='*') s++; if(a[i+1][1]=='*') s++; if(a[i+1][2]=='*') s++; cout<<s; } else if(k==m&&i!=1&&i!=m){ if(a[i-1][m-1]=='*') s++; if(a[i-1][m]=='*') s++; if(a[i][m-1]=='*') s++; if(a[i+1][m-1]=='*') s++; if(a[i+1][m]=='*') s++; cout<<s; } else{ if(a[i-1][k-1]=='*') s++; if(a[i-1][k]=='*') s++; if(a[i-1][k+1]=='*') s++; if(a[i][k-1]=='*') s++; if(a[i][k+1]=='*') s++; if(a[i+1][k-1]=='*') s++; if(a[i+1][k]=='*') s++; if(a[i+1][k+1]=='*') s++; cout<<s; } } } cout<<endl; } return 0; }