TouchStone
  请登录后使用
登录 注册
 系统首页  练习题库  考试列表  判题结果  问题讨论与解答  统计信息与排名
  • 首页
  • 题库
  • P3197
  • 题目
  • P3197岛屿
    限制 : 时间限制 : 10000 MS   空间限制 : 65536 KB
    问题描述

    湖面上有n 座岛屿,编号1 到n 。现在要湖上建桥使得岛屿连接起来,桥双向通行。
    何老板共进行了m 次询问,问题有如下两种:
    问题1:他问你a,b 两岛是否相互可达,是你就输出Yes;否则你就输出No,并在a,b之间建一座桥。
    问题2:他问你从岛c 出发可以到达的岛屿的个数(不包括c 自身),你要快速回答。

    输入格式

    输入第一行有两个整数n,m。
    接下来是m 行,按照时间顺序每行是一次询问。
    每行第一个整数q 代表询问的类型:
    如果q=1,则接下来是两个整数表示岛屿编号a,b(a≠b);
    如果q=2,则接下来是一个整数表示岛屿编号c。

    输出格式

    对于每个询问,按次序各输出一行作为回答:
    q=1 时:如果a,b 相互可达,则输出Yes;如果a,b 相互不可达,则输出No,并在a,b
    之间建一座桥。
    q=2 时:输出一个整数x,表示由c 出发可以到达的岛屿有x 个(不包括c 自身)。

    样例输入

    5 9
    1 2 3
    1 3 2
    2 1
    2 2
    1 4 5
    1 2 4
    1 2 5
    2 4
    2 5

    样例输出

    No
    Yes
    0

    No
    No
    Yes
    3
    3

    提示

    对于100%的数据,2≤n≤10,000, 1≤m≤30,000