求帮助
查看原帖
求帮助
1618723
MingZH楼主2024/12/21 19:16
#include <iostream>
using namespace std;
int main() {
    int n, m;
    cin >> n >> m;
    int a[n+2][m+2];
    for (int i = 0; i < 10; i++) {
        for (int j = 0; j < 10; j++) 
            a[i][j]=0;
    }
    char sh;
    for (int i = 0; i<n; i++) {
        for (int j = 0; j < m; j++) {
            cin >> sh;
            if (sh == '*') {
            int p1 = i - 1, p2 = i + 1, p3 = j - 1, p4 = j + 1;
            if (p1 >= 0) a[p1][j]++;    if (p2 <= 2) a[p2][j]++;
            if (p3 >= 0) a[i][p3]++;    if (p4 <=2) a[i][p4]++;
            if (p1 >= 0 && p3 >= 0)     a[p1][p3]++;
            if (p1 >= 0 && p4 <= 2)     a[p1][p4]++;
            if (p2 <= 2 && p3 >= 0)     a[p2][p3]++;
            if (p2 <= 2 && p4 <= 2)     a[p2][p4]++;
            a[i][j] += 1000;                 //记住地雷(不够严谨)
            }
        }
    }
    cout << endl;
    for (int i = 0; i <n; i++) { 
        for (int j = 0; j<m; j++) {
            if (a[i][j] >= 1000) { 
                cout << "*";
                continue;
            }
            cout << a[i][j];
        }
    }
}

报错,说: Wrong Answer. wrong answer Too short on line1.

2024/12/21 19:16
加载中...