#2100. 追击

内存限制:256 MiB 时间限制:1000 ms 标准输入输出
题目类型:传统 评测方式:文本比较
上传者: admin

题目描述

前情提要(与解题无关,只与背景故事有关)
37Lament将zyx追到了一个具有个点的图上。起初,这个图上没有任何边。 37Lament决定布下天罗地网。他进行了次操作,每次操作会选定两个不相交的点集 (即 )。对于 中的任意一个点 中的任意一个点 ,他都会在 之间连接一条无向边(我们称之间加了一条批边)。所有 次操作完成后,37Lament想向你进行 次询问。每次询问,他会给出两个点 。他想知道,如果他从点 出发,能否抓到在点 的zyx,即判断 之间是否存在一条路径。

输入格式

  • 第一行包含两个整数 (n,m)——点的数量与操作的数量。

  • 接下来 (m) 段,每段描述一条批边:

    • 第一行包含两个整数 (s,t),分别表示集合 (A) 的大小、集合 (B) 的大小。
    • 第二行包含 (s) 个两两不同的整数,表示集合 (A) 中的点编号。
    • 第三行包含 (t) 个两两不同的整数,表示集合 (B) 中的点编号。
    • 保证
  • 接下来输入一个,每行包含两个数(w,e),表示询问是否存在一条从w到e的路径。

输出格式

输出一共q行,第i行表示第i次询问,是输出"Yes",不是输出"No"。

样例

输入

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

输出

Yes
Yes

样例解释

第一条批边在 ({1,2}) 与 ({3,4}) 之间两两连边;第二条批边在 ({5}) 与 ({3,4}) 之间两两连边。 {1,2}连通,{5,1}也连通

数据范围与提示

  • 设所有操作的集合大小总和为 ,保证
  • 点编号均在 内,且每次操作输入的两个集合互不相交。