硬模拟即可
2024-08-15 18:08:52
发布于:云南
1阅读
0回复
0点赞
写了个check函数
#include<bits/stdc++.h>
using namespace std;
char a[105][105];
int ans[105][105];
int check(int n,int m){
    int cnt = 0;
    if(a[n + 1][m] == '*') cnt++;
    if(a[n - 1][m] == '*') cnt++;
    if(a[n][m + 1] == '*') cnt++;
    if(a[n][m - 1] == '*') cnt++;
    if(a[n - 1][m - 1] == '*') cnt++;
    if(a[n - 1][m + 1] == '*') cnt++;
    if(a[n + 1][m - 1] == '*') cnt++;
    if(a[n + 1][m + 1] == '*') cnt++;
    return cnt;
}
int main(){
    int n,m; cin >> n >> m;
    for(int i = 1;i <= n;i++){
        for(int j = 1;j <= m;j++) cin >> a[i][j];
    }
    for(int i = 1;i <= n;i++){
        for(int j = 1;j <= m;j++){
            if(a[i][j] == '*') continue;
            else ans[i][j] = check(i,j);
        }
    }
    for(int i = 1;i <= n;i++){
        for(int j = 1;j <= m;j++){
            if(a[i][j] == '*') cout << "*";
            else cout << ans[i][j];
        }
        cout << endl;
    }
    return 0;
}
这里空空如也







有帮助,赞一个