#include <stdio.h>
#include <string.h>
#include <algorithm>
using namespace std;
int stu[50500];
char flag[50500];
int find(int i)
{
if(stu[i]==i) return i;
return stu[i]=find(stu[i]);
}
int main()
{
int n, m;
int a, b, i, ans, tep, cas;
cas=0;
while(scanf("%d%d",&n,&m), n||m)
{
for(i=1; i<=n; i++) stu[i]=i;
for(i=1; i<=m; i++)
{
scanf("%d%d",&a,&b);
a=find(a),b=find(b);
stu[a]=b;
}
memset(flag,0,50500);
for(i=1,ans=0; i<=n; i++)
{
tep=find(i);
if(!flag[tep]) flag[tep]=1, ans++;
}
printf("Case %d: %d\n",++cas,ans);
}
return 0;
}
POJ P2524 Ubiquitous Religions
最新推荐文章于 2021-08-30 09:33:43 发布