标签:
2 3 4 1 0 0 0 0 0 1 1 1 1 1 0 5 5 1 1 1 1 0 0 0 1 0 1 0 0 0 0 0 1 1 1 0 0 0 0 1 1 1
2 3
思路:参考的博客:http://blog.csdn.net/a_eagle/article/details/7253336
#include<iostream>
#include<string.h>
using namespace std;
int a[101][101];
int x[4]={0,1,0,-1};
int y[4]={1,0,-1,0};
void bfs(int i,int j)
{
int k,s,t;
a[i][j]=0;
for(k=0;k<4;k++)
{
s=i+x[k];
t=j+y[k];
if(a[s][t]==1)
{
bfs(s,t);
}
}
}
int main()
{
int T,n,m,i,j,count;
cin>>T;
while(T--)
{
count=0;
memset(a,0,sizeof(a));
cin>>n>>m;
for(i=1;i<=n;i++)
for(j=1;j<=m;j++)
cin>>a[i][j];
for(i=1;i<=n;i++)
{
for(j=1;j<=m;j++)
{
if(a[i][j]==1)
{
bfs(i,j);
count++;
}
}
}
cout<<count<<endl;
}
return 0;
}
标签:
原文地址:http://blog.csdn.net/zuguodexiaoguoabc/article/details/44491989