现有一组数据,
第一行分别为: 猴数 m 线索数n
后有n行(两列)线索数,该行两个数x,y表该两个对应猴同一个猴窝
找出共推选出几个不同的猴窝
输入:
11 7
1 2
3 4
5 2
11 6
2 11
8 7
9 7
输出:
4
代码:
#include<stdio.h>
int main()
{
int h,x;
while(scanf("%d%d",&h,&x)!=-1)
{
int i=0,d[99];
for(i;i<2*x;i++)
{
scanf("%d",&d[i]);
}
int j,sum=1;int p;
for(i=2;i<2*x;i=i+2)
{
p=0;
for(j=0;j<i;j++)
{
if(d[j]==d[i]||d[j]==d[i+1])
{
p=1;
break;
}
}
if(p==0)
sum++;
}
for(i=0;i<x*x;i++)
{
for(j=1;j<=h;j++)
{
if(j==d[i])
{
p=1;
break;
}
}
}
if(p==0)
sum++;
printf("%d\n",sum);
}
return 0;
}