元梦 • 1年前
using namespace std; int a[105][105],t1[]={1,0,-1,0},t2[]={0,1,0,-1}; int m,n,c=0,counts=0; void cmp(int p,int q){
counts++;
a[p][q]=0;
for(int i=0;i<4;i++){
p+=t1[i];
q+=t2[i];
if(a[p][q]!=0){
cmp(p,q);
}
p-=t1[i];
q-=t2[i];
}
} int main(){
cin>>m>>n;
string s;
for(int i=0;i<m;i++){
cin>>s;
for(int j=0;j<n;j++){
a[i][j]=s[j]-'0';
}
}
// cout<<endl; for(int i=0;i<m;i++){ for(int j=0;j<n;j++){ if(a[i][j]!=0){ cmp(i,j); // for(int i=0;i<m;i++){ // for(int j=0;j<n;j++){ // cout<<a[i][j]; // } // cout<<endl; // } // cout<<endl; c++; } } } if(m==77) cout<<counts<<endl; cout<<c; // for(int i=0;i<=m;i++){ // for(int j=0;j<=n;j++){ // cout<<a[i][j]; // } // cout<<endl; // } return 0; }
评论:
请先登录,才能进行评论