根本不需要特判边界
2024-12-01 09:08:25
发布于:广东
1阅读
0回复
0点赞
#include<bits/stdc++.h>
using namespace std;
int main()
{
    int n,m;
    cin >> n >> m;
    char c[n+1][m+1];
    int a[n+2][m+2]={-1};
    for (int i=1;i<=n;i++)
    {
        for (int j=1;j<=m;j++)
        {
            cin >> c[i][j];
            if (c[i][j]=='*')
                a[i-1][j-1]++,a[i-1][j]++,a[i-1][j+1]++,a[i][j-1]++,a[i][j+1]++,a[i+1][j-1]++,a[i+1][j]++,a[i+1][j+1]++;
        }
    }
    for (int i=1;i<=n;i++)
    {
        for (int j=1;j<=m;j++)
        {
            if (c[i][j]=='*')
                cout << '*';
            else
                cout << a[i][j];
        }
        cout << endl;
    }
	return 0;
}
这里空空如也





有帮助,赞一个