11 条题解

  • 1
    @ 2025-3-30 11:30:00

    #include <math.h>

    #include

    #include <stdio.h>

    #include

    #include

    #include

    #include <string.h>

    #include

    using namespace std;

    #define LL long long

    const int N = 1e5 + 10;

    const int INF = 0x3f3f3f3f;

    char a[110][110];

    int dx[] = {1,1,1,-1,-1,-1,0,0};

    int dy[] = {0,1,-1,0,1,-1,1,-1};

    int main()

    {

    int n,m;
    
    cin >> n >> m;
    
    for(int i = 0; i < n; i++)
    
        cin >> a[i];
    
    for(int i = 0; i < n; i++)
    
    {
    
        for(int j = 0; j < m; j++)
    
        {
    
            int num = 0;
    
            if(a[i][j] == '*')
    
                cout << "*";
    
            else
    
            {
    
                for(int k = 0; k < 8; k++)
    
                {
    
                    int x = i + dx[k];
    
                    int y = j + dy[k];
    
                    if(x < 0 && y < 0 && x >= n && y >= m)
    
                        continue;
    
                    if(a[x][y] == '*')
    
                        num++;
    
                }
    
                cout << num;
    
            }
    
        }
    
        cout << endl;
    
    }
    

    }

    信息

    ID
    749
    时间
    1000ms
    内存
    256MiB
    难度
    4
    标签
    递交数
    358
    已通过
    157
    上传者