我的代码:
#include<bits/stdc++.h>
using namespace std;
typedef long long ll;
const char c = '#';
int n, m;
char s[1001][1001];
int ans;
int main() {
scanf("%d%d", &n, &m);
for (int i = 1; i <= n; i++)
scanf("%s", s[i] + 1);
for (int i = 1; i <= n; i++)
for (int j = 1; i <= m; i++)
if (s[i][j] == c) {
ans++;
if (s[i + 1][j] == c)
s[i + 1][j] = 'a';
if (s[i - 1][j] == c)
s[i - 1][j] = 'a';
if (s[i][j + 1] == c)
s[i][j + 1] = 'a';
if (s[i][j - 1] == c)
s[i][j - 1] = 'a';
if (s[i + 1][j + 1] == c)
s[i + 1][j + 1] = 'a';
if (s[i - 1][j - 1] == c)
s[i - 1][j - 1] = 'a';
if (s[i + 1][j - 1] == c)
s[i + 1][j - 1] = 'a';
if (s[i - 1][j + 1] == c)
s[i - 1][j + 1] = 'a';
} else {
if (s[i][j] == 'a') {
if (s[i + 1][j] == 'a')
s[i + 1][j] = 'a';
if (s[i - 1][j] == 'a')
s[i - 1][j] = 'a';
if (s[i][j + 1] == 'a')
s[i][j + 1] = 'a';
if (s[i][j - 1] == 'a')
s[i][j - 1] = 'a';
if (s[i + 1][j + 1] == 'a')
s[i + 1][j + 1] = 'a';
if (s[i - 1][j - 1] == 'a')
s[i - 1][j - 1] = 'a';
if (s[i + 1][j - 1] == 'a')
s[i + 1][j - 1] = 'a';
if (s[i - 1][j + 1] == 'a')
s[i - 1][j + 1] = 'a';
}
}
printf("%d\n", ans);
}