1 条题解

  • 0
    @ 2024-12-7 11:02:30
    #include <stdio.h>
    const int N = 1010;
    int n, m, a[N][N];
    
    int isp(int num) {
        for (int i = 2; i <= num / i; i++)
            if (num % i == 0)
                return 0;
        return num > 1;
    }
    int chk(int x, int y) {
        if (x == 1 || x == n || y == 1 || y == m)
            return 0;
        int t = a[x][y];
        return (a[x - 1][y - 1] < t) && (a[x - 1][y] < t) &&
               (a[x - 1][y + 1] < t) && (a[x][y - 1] < t) && (a[x][y + 1] < t) &&
               (a[x + 1][y - 1] < t) && (a[x + 1][y] < t) &&
               (a[x + 1][y + 1] < t) && isp(t);
    }
    
    int main() {
        scanf("%d%d", &n, &m);
        for (int i = 1; i <= n; i++)
            for (int j = 1; j <= m; j++)
                scanf("%d", &a[i][j]);
        int ans = 0;
        for (int i = 1; i <= n; i++)
            for (int j = 1; j <= m; j++)
                if (chk(i, j))
                    ans++;
        printf("%d", ans);
        return 0;
    }
    
    • 1

    信息

    ID
    447
    时间
    1000ms
    内存
    256MiB
    难度
    8
    标签
    (无)
    递交数
    163
    已通过
    20
    上传者