洛谷 扫雷传送门
一道模拟题,
初步搜索思想
贴代码
`#include <bits/stdc++.h>
using namespace std;
define endl '\n'
define ll long long
ll dx[8]={1,1,1,0,0,-1,-1,-1};
ll dy[8]={0,1,-1,1,-1,0,1,-1};
int main()
{
ll n,m;
cin >> n >> m;
vector<vector
for(ll i=1;i<=n;i++){
for(ll j=1;j<=m;j++){
cin >> v[i][j];
}
}
for(ll i=1;i<=n;i++){
for(ll j=1;j<=m;j++){
if(v[i][j]==''){
cout << '';
}else{
ll cnt=0;
for(ll k=0;k<8;k++){
if(i+dx[k]>=1&&i+dx[k]<=n&&j+dy[k]>=1&&j+dy[k]<=m) {
if (v[i + dx[k]][j + dy[k]] == '*') {
cnt++;
}
}
}
cout << cnt;
}
}
cout << endl;
}
return 0;
}`