CF1328E.Tree Queries

传统题 时间 2000 ms 内存 256 MiB 9 尝试 20 已通过 3 标签

Tree Queries

题目描述

给定一棵有 nn 个结点的树,结点编号为 11 到 nn,根结点为 11。

有 mm 次询问。每次询问给出 kk 个互不相同的结点。请判断是否存在某个结点 uu,使得从根结点 11 到 uu 的简单路径满足:询问中的每个结点要么在这条路径上,要么与路径上的某个结点距离恰好为 11。

输入格式

第一行输入两个整数 n,mn,m(2≤n≤2×1052 \le n \le 2\times10^5,1≤m≤2×1051 \le m \le 2\times10^5),分别表示树的结点数和询问数。

接下来 n−1n-1 行,每行输入两个整数 ui,viu_i,v_i(1≤ui,vi≤n1 \le u_i,v_i \le n,ui≠viu_i\ne v_i),表示树的一条边。保证这些边构成一棵树。

接下来 mm 行描述询问。每行先输入一个整数 kik_i(1≤ki≤n1 \le k_i \le n),再输入 kik_i 个互不相同的整数 vi,1,vi,2,…,vi,kiv_{i,1},v_{i,2},\dots,v_{i,k_i}(1≤vi,j≤n1 \le v_{i,j} \le n),表示本次询问给出的结点。

保证所有询问中 kik_i 的总和不超过 2×1052\times10^5。

输出格式

对每次询问输出一行:若存在满足条件的根到结点路径,输出 YES;否则输出 NO。

样例

输入:

10 6
1 2
1 3
1 4
2 5
2 6
3 7
7 8
7 9
9 10
4 3 8 9 10
3 2 4 6
3 2 1 5
3 4 8 2
2 6 10
3 5 4 7

输出:

YES
YES
YES
YES
NO
NO

在线编程 IDE

建议全屏模式获得最佳体验