编程题
### 问题描述 在一个神秘的森林中,有 $n$ 只动物,它们形成了一棵关系树,编号从 $1$ 到 $n$,编号为 $1$ 的动物同为关系树的根节点。 我们把一个动物 $a$ 称作另一个动物 $b$ 的一级祖先,当且仅当 $a$ 是 $b$ 的父亲(每个动物最多只有一个父亲);我们把一个动物 $a$ 称作另一个动物 $b$ 的 $k$ 级祖先 $(k>1)$,当且仅当 $a$ 是 $b$ 的 $1$ 级祖先的 $(k-1)$ 级祖先。 如果两只动物 $a$ 和 $b(a \neq b)$ 的 $k$ 级祖先相同,那么我们就称 $a$ 和 $b$ 为 $k$ 级亲戚。 现在,你需要回答 $m$ 个查询,每个查询给出一个动物编号 $x$ 和一个整数 $k$,请你计算 $x$ 这只动物有多少只 $k$ 级亲戚。 为了解决这个问题,你可以使用上古神器“感应之眼”,它可以看清每只动物周围的亲戚关系。但是,你需要自己来编写程序实现该功能。 ### 输入格式 第一行一个整数 $n$($1\leq n \leq 10^5$),表示动物数量。 接下来 $n - 1$ 行,每行包含两个整数 $u,v$($1\leq u,v \leq n$),表示结点 $u$ 和 $v$ 之间有一条树边。 第三行一个整数 $m$($1\leq m \leq 10^5$),表示查询数量。 接下来 $m$ 行,每行包含一对整数 $x_i, k_i$($1\leq x_i,k_i \leq n$),表示一个查询。 ### 输出格式 输出 $m$ 行,每行一个整数,表示对应查询的结果。 ### 样例输入 ```text 6 1 2 1 3 1 4 4 5 4 6 3 1 1 2 1 5 1 ``` ### 样例输出 ```text 0 2 1 ```
查看答案
赣ICP备20007335号-2