题面 下发文件
题目描述
给定一棵包含 n 个点的树。∀1≤u,v≤n ,定义 dis(u,v) 为 u 到 v 的简单路径上的边数。
∀1≤u,v≤n,u=v ,我们称 u 喜欢 v ,当且仅当 ∀1≤w≤n,w=v 都满足 dis(u,w)=dis(u,v) 。
你需要回答 q 次询问。
每次询问给定 l1,r1,l2,r2 ,你需要回答有多少有序对 (u,v) 满足:
u∈[l1,r1],v∈[l2,r2] ,且 u 喜欢 v 。
输入格式
第一行包含两个整数 n,q 。
接下来 n−1 行,每行包含两个整数 u,v ,代表这棵树的一条边。
接下来 q 行,每行包含四个整数 l1,r1,l2,r2 ,代表一次询问。``
输出格式
对于每次查询,输出一行一个整数,表示这次查询的答案。
样例
样例 1 输入
10 10
1 8
8 9
9 2
2 6
1 4
2 5
5 10
6 7
1 3
2 2 9 10
6 7 1 6
8 10 4 9
5 8 7 10
3 4 8 10
2 10 6 7
7 10 10 10
3 4 2 10
2 10 5 7
6 8 1 9
样例 1 输出
0
4
1
0
2
1
0
4
2
4
样例 2~5
见下发文件。
数据范围
所有数据满足:1≤n,q≤105 , 保证输入给出的是一棵树。
对于每次询问,1≤l1≤r1≤n,1≤l2≤r2≤n 。
测试点编号 |
n,q≤ |
特殊性质 |
1∼4 |
2000 |
无 |
5∼7 |
105 |
A |
8∼10 |
B |
11∼13 |
C |
14∼16 |
D |
17∼21 |
5∗104 |
无 |
22∼25 |
105 |
特殊性质 A :给出的树所有节点度数都 ≤2 。
特殊性质 B:q=1 。
特殊性质 C:所有查询都满足 l2=1,r2=n 。
特殊性质 D:给定的树是随机生成的,具体的,我们会生成一棵以 1 为根的树,∀2≤i≤n ,i 的父亲在 [1,i−1] 间均匀随机。之后会将编号重新随机排列。