zoukankan      html  css  js  c++  java
  • poj 2524

     

     

    #include <iostream>
    #include<cstdio>
    using namespace std;
    #define N 50010
    int p[N];
    void init(int n)
    { for(int i=1 ;i<=n;i++) p[i]=i ; }
    int find(int x)
    { if (x==p[x]) return x;
    else return p[x]=find(p[x]);
    }


    int main( )

    { int n,m,i,x,y,px,py,c=1;
    while(scanf("%d%d",&m,&n),m||n)
    { init(m);
    for(i=1;i<=n;i++)
    { scanf("%d%d",&x,&y);
    px=find(x); py=find(y);
    if(px!=py) { p[px]=py; m--;}
    }
    printf("Case %d: %d ",c++,m);

    }
    }

    //poj 2524


    #include <cstdio>
    #include <string>
    #include <cstring>
    #include <cmath>
    #include <algorithm>
    #include <iostream>
    using namespace std;
    #define MAX 50008
    int pa[MAX];
    int findset(int x){
    return x==pa[x]? x : pa[x]=findset(pa[x]);
    }
    int main(){
    int n,m,T=1;
    while(scanf("%d%d",&n,&m)==2 &&n){
    if(m==0){
    printf("Case %d: %d ",T++,n);continue;
    }
    for(int i=1;i<=n;i++)pa[i]=i;
    int u,v;
    for(int i=0;i<m;i++){
    scanf("%d%d",&u,&v);
    u=findset(u);
    v=findset(v);
    if(u!=v)pa[v]=u;
    }
    int ans=0;
    for(int i=1;i<=n;i++){
    if(pa[i]==i)ans++;
    }
    printf("Case %d: %d ",T++,ans);
    }
    return 0;
    }

  • 相关阅读:
    虚拟机中安装CentOS7
    tensorflowwindows安装
    CentOS7离线安装Ambari与HDP
    (二)apache atlas配置和运行
    kafka资料收集
    kafka源代码环境配置
    文件传输遇到的坑
    故障保护设置
    多轴APM调参
    程序员考试操作步骤
  • 原文地址:https://www.cnblogs.com/2014acm/p/3903295.html
Copyright © 2011-2022 走看看