#include<bits/stdc++.h>
using namespace std;
int n,m,i,j,s,a[2000][2000];char c;
void sc(int x,int y){
if(a[x][y]==0||x<1||x>n||y<1||y>m) return;
a[x][y]=0;
sc(x+1,y);sc(x-1,y);sc(x,y+1);sc(x,y-1);
}
int main(){
scanf("%d%d",&n,&m);
for(i=1;i<=n;i++){
getchar();
for(j=1;j<=m;j++){
scanf("%c",&c);
if(c=='0') a[i][j]=0;
else a[i][j]=1;
}
}
for(i=1;i<=n;i++)
for(j=1;j<=m;j++)
if(a[i][j]==1){
sc(i,j);s++;
}
printf("%d\n",s);
return 0;
}
为啥