树上倍增
时间限制:1秒 内存限制:256M
【题目描述】
给定含 \(n\) 个结点树(编号为 \(1..n\)),指定 1 号结点为根。
然后有 \(m\) 个查询:\(i\ x\) 表示从编号为 \(i\) 的点向上走 \(x\) 步后能到达的结点编号。
【输入格式】
第一行包括两个正整数 \(n,m\),表示树的节点数和询问数。
接下来 \(n-1\) 行描述树边情况,其中第 \(i\) 行包含 2 个整数 \(a_i, b_i\),表示第 \(i\) 条双向边连接 \(a_i\) 和 \(b_i\)。
接下来 \(m\) 行描述每个询问。
【输出格式】
每个询问输出对应的答案,如果没有答案,则输出 0。
【输入输出样例1】
Input
11 4
1 2
1 3
4 3
9 2
3 6
4 5
6 7
7 8
8 10
11 4
8 3
11 2
4 7
10 5
Output
3
3
0
1
【数据限制】
对于 \(100\%\) 的数据,\(1≤n,m≤300000\)
【来源】
Mr.he