CF BUDDY
← Problems·

1328E · Tree Queries

1900 · dfs and similar, graphs, trees

Problem: You are given a rooted tree consisting of nn vertices numbered from 11 to nn. The root of the tree is a vertex number 11.

A tree is a connected undirected graph with n1n-1 edges.

You are given mm queries. The ii-th query consists of the set of kik_i distinct vertices vi[1],vi[2],,vi[ki]v_i[1], v_i[2], \dots, v_i[k_i]. Your task is to say if there is a path from the root to some vertex uu such that each of the given kk vertices is either belongs to this path or has the distance 11 to some vertex of this path.

Input Format: The first line of the input contains two integers nn and mm (2n21052 \le n \le 2 \cdot 10^5, 1m21051 \le m \le 2 \cdot 10^5) — the number of vertices in the tree and the number of queries.

Each of the next n1n-1 lines describes an edge of the tree. Edge ii is denoted by two integers uiu_i and viv_i, the labels of vertices it connects (1ui,vin,uivi(1 \le u_i, v_i \le n, u_i \ne v_i).

It is guaranteed that the given edges form a tree.

The next mm lines describe queries. The ii-th line describes the ii-th query and starts with the integer kik_i (1kin1 \le k_i \le n) — the number of vertices in the current query. Then kik_i integers follow: vi[1],vi[2],,vi[ki]v_i[1], v_i[2], \dots, v_i[k_i] (1vi[j]n1 \le v_i[j] \le n), where vi[j]v_i[j] is the jj-th vertex of the ii-th query.

It is guaranteed that all vertices in a single query are distinct.

It is guaranteed that the sum of kik_i does not exceed 21052 \cdot 10^5 (i=1mki2105\sum\limits_{i=1}^{m} k_i \le 2 \cdot 10^5).

Output Format: For each query, print the answer — "YES", if there is a path from the root to some vertex uu such that each of the given kk vertices is either belongs to this path or has the distance 11 to some vertex of this path and "NO" otherwise.

Note: The picture corresponding to the example:

Consider the queries.

The first query is [3,8,9,10][3, 8, 9, 10]. The answer is "YES" as you can choose the path from the root 11 to the vertex u=10u=10. Then vertices [3,9,10][3, 9, 10] belong to the path from 11 to 1010 and the vertex 88 has distance 11 to the vertex 77 which also belongs to this path.

The second query is [2,4,6][2, 4, 6]. The answer is "YES" as you can choose the path to the vertex u=2u=2. Then the vertex 44 has distance 11 to the vertex 11 which belongs to this path and the vertex 66 has distance 11 to the vertex 22 which belongs to this path.

The third query is [2,1,5][2, 1, 5]. The answer is "YES" as you can choose the path to the vertex u=5u=5 and all vertices of the query belong to this path.

The fourth query is [4,8,2][4, 8, 2]. The answer is "YES" as you can choose the path to the vertex u=9u=9 so vertices 22 and 44 both have distance 11 to the vertex 11 which belongs to this path and the vertex 88 has distance 11 to the vertex 77 which belongs to this path.

The fifth and the sixth queries both have answer "NO" because you cannot choose suitable vertex uu.

Sample Cases

Case 1

Input

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

Output

YES
YES
YES
YES
NO
NO

Similar problems

00:00:00
Loading editor…
Welcome! I'm your coding tutor for this problem. Use the chips below to reveal stored hints or get AI feedback on your code. I'll guide you step by step — never giving away the solution.

Sign in to unlock AI tutor feedback