luogu#P12180. DerrickLo's City (UBC002C)

DerrickLo's City (UBC002C)

题目背景

DerrickLo 看到了一个 n7.5×105n \le 7.5 \times 10^5 的题,并且发现很多人写了 O(n2)O(n^2) 过了。于是他想写 O(nlog3n)O(n\log^3n),但是挂了。于是将原题的序列改成了树。

注:以上故事是将出题人的名字换成 DerrickLo 得到的。


The English statement is provided here. You must submit your solution only in the Chinese version.

题目描述

DerrickLo 在游戏中掌控着一个城市。这个城市内的团体间并不是非常的和谐,因此需要通过开会来增进关系。

已知这个组织所在的城市被分为了 nn 个镇,每一个镇上恰好有一个团体。其中编号为 11 的镇上分布着团体 1122 号镇上有团体 22,等等。这 nn 个镇通过 n1n-1 条路径相连,两两可以互相到达。

每次开会,DerrickLo 会指定一个区间 [l,r][l, r],邀请编号在 [l,r][l, r] 之间的团体来开会。由于团体比较分散,因此他还需要指定一个开会地址 pp。因为团体的关系比较僵硬,所以前往开会的团体去 pp 的途中,不能到达别的与会团体所在的镇。

由于 DerrickLo 刚接触这个游戏,操作不太熟悉,确定 pp 的任务就交给你了。

输入格式

第一行两个正整数 n,qn, q,表示镇的数量,会议个数。

接下来 n1n-1 行,每行两个正整数 ai,bia_i, b_i,表示 aia_i 镇 和 bib_i 镇之间有道路直接相连。

接下来 qq 行,每行两个整数 li,ril_i, r_i,表示此次由编号在 [li,ri][l_i, r_i] 之间的团体与会。

输出格式

对于每一个会议,单独输出一行。如果能够选出这个地点,则输出 Yes,否则输出 No

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

Yes
No

提示

对于第一个会议,1,2,61, 2, 6 镇均可作为参会点。

对于第二个会议,无论选哪里作为参会点,2,42, 4 两团体均会有一方经过另一镇。

数据范围

1n,q1051 \le n, q \le 10^5

保证道路 (ai,bi)(a_i, b_i) 使得任意两镇可互相到达。

1lirin1 \le l_i \le r_i \le n