题目:
代码:
void f(int c,int x,int y,vector<vector<int> > &vv)
{//c代表第几个人。
for(int i=0;i<x;i++)
{
if(vv[i][c])
{
vv[i][c]=0;
f(i,x,y,vv);
}
}
for(int i=0;i<y;i++)
{
if(vv[c][i])
{
vv[c][i]=0;
f(i,x,y,vv);
}
}
}
int main()
{
vector<vector<int> > vv;
if(vv.size()==0) return all;
int x=vv.size();
int y=vv[0].size();
for(int i=0;i<vv.size();i++)
{
for(int j=0;j<vv[0].size();j++)
{
if(vv[i][j])
{
all++;
f(i,x,y,vv);
f(j,x,y,vv);
}
}
}
return all;
}