再贴一次并查集

F - The Suspects POJ - 1611

#include
#include
#include
using namespace std;
int pre[30005];
int n,m,a,b;
void unit()
{
    for(int i=0;i<=n;i++)
    pre[i]=i;
}
int find(int x)
{
    if(pre[x]==x)
    return x;
    else
    return find(pre[x]);
}
int Union(int a1,int b1)
{
    int X=find(a1);
    int Y=find(b1);
    if(find(a1)!=find(b1))
    {
        pre[X]=Y; 
    }
}
int main()
{
while(  scanf("%d%d",&n,&m)!=EOF)
{       
if(n==0&&m==0)
return 0;
        unit();
    for(int i=0;i

你可能感兴趣的:(再贴一次并查集)