给定一棵有 n 个节点的树,节点编号为 1 ~ n,节点 1 为根节点。每个节点有一个父节点(根节点的父节点用 0 表示)。现在有 q 个查询,每个查询给出一个节点 u 和一个整数 k,要求你求节点 u 的第 k 级祖先。如果不存在,则返回 -1。
第一行两个整数 n 和 q (1 ≤ n, q ≤ 10^5),分别表示节点数和查询数。
第二行 n 个整数 p[1..n],表示每个节点的父节点 p[i],如果节点 i 是根,则 p[i] = 0。
接下来的 q 行,每行两个整数 u 和 k,表示一次查询。
对每个查询输出一个整数,表示第 k 级祖先,如果不存在则输出 -1。
5 3 0 1 1 2 2 4 1 4 2 5 3
2 1 -1
对于所有的数据,保证:
1 ≤ n, q ≤ 10^5