• codevs 5929 亲戚


    5929 亲戚

     

    时间限制: 1 s
    空间限制: 128000 KB
    题目等级 : 黄金 Gold
     
     
     
    题目描述 Description

    若某个家族人员过于庞大,要判断两个是否是亲戚,确实还很不容易,现在给出某个亲戚关系图,求任意给出的两个人是否具有亲戚关系。

    规定:x和y是亲戚,y和z是亲戚,那么x和z也是亲戚。如果x,y是亲戚,那么x的亲戚都是y的亲戚,y的亲戚也都是x的亲戚。 

    输入描述 Input Description

    第一行:三个整数n,m,p,(n<=5000,m<=5000,p<=5000),分别表示有n个人,m个亲戚关系,询问p对亲戚关系。

    以下m行:每行两个数Mi,Mj,1<=Mi,Mj<=N,表示Ai和Bi具有亲戚关系。

    接下来p行:每行两个数Pi,Pj,询问Pi和Pj是否具有亲戚关系。

    输出描述 Output Description

    P行,每行一个’Yes’或’No’。表示第i个询问的答案为“具有”或“不具有”亲戚关系。

    样例输入 Sample Input
    6 5 3
    1 2
    1 5
    3 4
    5 2
    1 3
    1 4
    2 3
    5 6
    样例输出 Sample Output
    Yes
    Yes
    No
    数据范围及提示 Data Size & Hint

    题目中已有,不重复解释。

     1 #include<iostream>
     2 using namespace std;
     3 #include<cstdio>
     4 #include<cstring>
     5 int father[6000008];
     6 
     7 int find(int x)
     8 {
     9     if(father[x]!=x)
    10     return father[x]=find(father[x]);
    11     else return x;
    12 }
    13 void u(int x,int y)
    14 {
    15     father[x]=y;
    16 }
    17 int main()
    18 {
    19     int N,M,q;
    20     scanf("%d%d%d",&N,&M,&q);
    21     for(int i=1;i<=N;i++){
    22         father[i]=i;
    23     }
    24     for(int i=1;i<=M;i++)
    25     {
    26         int a,b;
    27         scanf("%d%d",&a,&b);
    28         int r=find(a);
    29         int rr=find(b);
    30         if(r!=rr)
    31         {
    32             u(r,rr);
    33         }
    34     }
    35     for(int i=1;i<=q;i++)
    36     {
    37         int a,b;
    38         scanf("%d%d",&a,&b);
    39         if(find(a)==find(b))
    40         printf("Yes
    ");
    41         else printf("No
    ");
    42     }
    43 }
  • 相关阅读:
    既然来了,就要在这扎根
    vuejs 组件 移动端push 没有渲染页面
    cucumber——BDD的一个自动化测试的副产品
    Spock框架——单元测试框架
    Mockito——用于 Java 开发的模拟测试框架
    TestNG——开源自动化测试框架
    selenium/appium/airtest——UI测试工具
    rest-assured 使用指南——接口测试
    JUnit 4.1——單元測試框架
    二、面向對象(补充)
  • 原文地址:https://www.cnblogs.com/sssy/p/6700482.html
Copyright © 2020-2023  润新知