题意:给定一个字符矩阵,求矩阵中由五个 X
组成的大 X
的数量。
思路:枚举每个点,判断是否是 X
的中心点。
const int N = 500 + 5;
int n, ans = 0;
char a[N][N];
void solution() {
n = read();
rep(i, 1, n) scanf("%s", a[i] + 1);
rep(i, 1, n) rep(j, 1, n) ans += (a[i][j] == a[i - 1][j - 1] && a[i][j] == a[i - 1][j + 1] && a[i][j] == a[i + 1][j - 1] && a[i][j] == a[i + 1][j + 1] && a[i][j] == 'X');
println(ans);
}