1547: 树上询问
题目描述
你有一棵 n
节点的树 T
,回答 m
个询问,每次询问给你两个整数 l,r
,问存在多少个整数 k
使得从 l
沿着 l→r
的简单路径走 k
步恰好到达 k
。
输入
第一行,两个整数 n,m
表示节点数和询问数。
之后 n−1
行,每行两个整数 u,v
表示一条边。
之后 m
行,每行两个整数 l,r
表示 一个询问,题意同题目描述。
输出
m
行,对于每个询问单独输出一行表示你的答案。
样例输入 复制
9 3
5 4
4 3
3 7
4 1
1 6
1 8
1 9
5 2
6 7
2 3
3 2
样例输出 复制
2
1
0
提示
【样例解释】
如图,红色表示第一次询问中 k=0,1,…,4
的情况,蓝色表示第二次询问,绿色是第三次询问。
其中,在第一次询问中:
- 走 0
步到达 6
,不符题意。 - 走 1
步到达 1
,满足题意。 - 走 2
步到达 4
,不符题意。 - 走 3
步到达 3
,满足题意。 - 走 4
步到达 7
,不符题意。
【数据范围】
其中特殊性质一栏中,每个字符分别表示该测试点满足的性质。例如 4∼6
行中的"ACD"表示#4满足A,#5满足C,#6满足D。
A: 一条链
B: 深度不超过 50
C: 将 1
作为根时会形成一棵二叉树D: 无性质