#include<bits/stdc++.h>
#define MAXN (int)(1e2+1e1)
using namespace std;
int n,m,cnt;
short mv[20][20]={{},{0,1},{0,-1},{1,0},{-1,0},{0,2},{0,-2},{2,0},{-2,0},{1,1},{1,-1},{-1,1},{-1,-1}};
char s[MAXN][MAXN];
bool vis[MAXN][MAXN];
void dfs(int x,int y){
vis[x][y]=true;
for(int i=1;i<=n;i++){
int dx=x+mv[0][i],dy=y+mv[0][i];
if(dx>0 && dy>0 && dx<n && dy<m && !vis[dx][dy] && s[dx][dy]=='#'){
dfs(dx,dy);
}
}
}
int main()
{
ios::sync_with_stdio(0);
cin.tie(0); cout.tie(0);
cin>>n>>m;
for(int i=1;i<=n;i++){
for(int j=1;j<=m;j++) cin>>s[i][j];
}
for(int i=1;i<=n;i++){
for(int j=1;j<=n;j++){
if(!vis[i][j] && s[i][j]=='#'){
dfs(i,j);
cnt++;
}
}
}
cout<<cnt<<endl;
return 0;
}
阳历输出 106,还有 10 分,这我很惊讶。