zoukankan      html  css  js  c++  java
  • PAT题解-1118. Birds in Forest (25)-(并查集模板题)

    如题。。。

    #include <iostream>
    #include <cstdio>
    #include <algorithm>
    #include <string.h>
    using namespace std;
    /*
    并查集水题
    */
    const int maxn=10000+5;
    
    struct UF{
        int father[maxn];
        void init(){
            for(int i=0;i<maxn;i++)
                father[i]=i;
        }
        int find_root(int x){
            if(father[x]!=x){
                father[x]=find_root(father[x]);
            }
            return father[x];
        }
        void Union(int x,int y){
            int fx=find_root(x);
            int fy=find_root(y);
            if(fx!=fy){
                father[fy]=fx;
            }
        }
    }uf;
    int main()
    {
        int n,q;
        int k,a,b;
        int vis[maxn];
        uf.init();
        memset(vis,0,sizeof(vis));
        scanf("%d",&n);
        for(int i=0;i<n;i++){
            scanf("%d %d",&k,&a);
            vis[a]=1;
            for(int j=1;j<k;j++){
                scanf("%d",&b);
                vis[b]=1;
                uf.Union(a,b);
                a=b;
            }
        }
        int flag[maxn];
        memset(flag,0,sizeof(flag));
        int cnt=0;
        for(int i=0;i<maxn;i++){
            if(vis[i]){
                cnt++;
                int fa=uf.find_root(i);
                flag[fa]=1;
            }
        }
        int tree=0;
        for(int i=0;i<maxn;i++){
            tree+=flag[i];
        }
        printf("%d %d
    ",tree,cnt);
        scanf("%d",&q);
        for(int i=0;i<q;i++){
            scanf("%d %d",&a,&b);
            int fa=uf.find_root(a);
            int fb=uf.find_root(b);
            if(fa==fb)
                printf("Yes
    ");
            else
                printf("No
    ");
        }
        return 0;
    }
    View Code
  • 相关阅读:
    php 类文件加载 Autoloader
    windows下配置nginx+php
    crontab 定时调度
    PHP 常见语法 集合
    php socket
    tengine + mysql + nginx + php
    yii2 [行为] behaviors 拦截器
    .htaccess 语法以及应用
    nginx 安装
    Nginx HTTP负载均衡和反向代理配置
  • 原文地址:https://www.cnblogs.com/chenxiwenruo/p/6131882.html
Copyright © 2011-2022 走看看