zoukankan      html  css  js  c++  java
  • 并查集模版

    #include <stdio.h>
    int bin[50010];

    int findx(int x)
    {
        int r=x;
        while(r!=bin[r])
            r=bin[r];
        int j=x;
        int k;
        while(bin[j]!=r)
        {
           k=bin[j];
           bin[j]=r;
           j=k;
        }
        return r;
    }

    void merge(int x,int y)
    {
        int fx,fy;
        fx = findx(x);
        fy = findx(y);
        if(fx != fy)
            bin[fx] = fy;
    }

    int main()
    {
        int n,m,x,j,y,i,k=0,count;
        bin[0]=0;
        while(scanf("%d%d",&n,&m)!=EOF&&(n||m))
        {
            for(i=1;i<=n;i++)
                bin[i]=i;
            for(j=m;j>0;j--)
            {
                scanf("%d %d",&x,&y);
                merge(x,y);
            }
            for(count=0,i=1;i<=n;i++)
                if(bin[i] == i)
                    count ++;
            k++;
            printf("Case %d: %d ",k,count);

        }
           return 0;
    }

    #include <stdio.h>
    int bin[50010];

    int findx(int x)
    {
        int r=x;
        while(r!=bin[r])
            r=bin[r];
        int j=x;
        int k;
        while(bin[j]!=r)
        {
           k=bin[j];
           bin[j]=r;
           j=k;
        }
        return r;
    }

    void merge(int x,int y)
    {
        int fx,fy;
        fx = findx(x);
        fy = findx(y);
        if(fx != fy)
            bin[fx] = fy;
    }

    int main()
    {
        int n,m,x,j,y,i,k=0,count;
        bin[0]=0;
        while(scanf("%d%d",&n,&m)!=EOF&&(n||m))
        {
            for(i=1;i<=n;i++)
                bin[i]=i;
            for(j=m;j>0;j--)
            {
                scanf("%d %d",&x,&y);
                merge(x,y);
            }
            for(count=0,i=1;i<=n;i++)
                if(bin[i] == i)
                    count ++;
            k++;
            printf("Case %d: %d ",k,count);

        }
           return 0;
    }

  • 相关阅读:
    WPF中样式中事件处理
    模板方法
    WPF 中ComboBox绑定DataSet
    装饰模式
    【转帖】c#项目的打包部署教材图文
    WPF中用比例设置长度或宽度
    在WFP中完美使用winform的控件
    一个WPF软件作品新鲜出炉,欢迎拍砖
    建造者模式(生成器模式)
    Windows Presentation Foundation 中的 Pack URI
  • 原文地址:https://www.cnblogs.com/zhangmingcheng/p/3667312.html
Copyright © 2011-2022 走看看