给定一棵 $n$ 个顶点的有根树,顶点编号为 $1,\dots,n$ ,$1$ 为根,$f_2,\dots,f_n$ 依次表示 $2,\dots,n$ 的父亲。
给定 $m$ 对整数 $a_1,b_1,\dots,a_m,b_m$ ,你需要构造一个 $1,\dots,m$ 的排列 $p_1,\dots,p_m$ ,满足这个排列的代价不超过 $4\times 10^9$。
排列的代价定义为:
$$|S(a_{p_1})|+|S(b_{p_1})|+\sum\limits_{i=2}^m |S(a_{p_{i-1}})\oplus S(a_{p_i})|+|S(b_{p_{i-1}})\oplus S(b_{p_i})|$$
其中 $S(x)$ 是以 $x$ 为根的子树中的顶点构成的集合,$|A|$ 是集合 $A$ 的元素个数,$A\oplus B$ 是集合 $A,B$ 的对称差(即在 $A,B$ 中恰好出现一次的元素构成的集合)。
输入格式
第一行两个整数 $n,m$ ;
第二行 $n-1$ 个整数 $f_2,\dots,f_n$ ;
接下来 $m$ 行,每行两个整数表示 $a_i,b_i$ ,$i=1,\dots,m$ 。
输出格式
输出 $m$ 行,每行一个整数,依次表示 $p_1,\dots,p_m$ 。
样例数据
样例 1 输入
5 3 1 1 2 3 1 1 2 5 4 3
样例 1 输出
2 3 1
子任务
Idea:nzhtl1477,Solution:ccz181078,Code:ccz181078,Data:ccz181078
对于 $25\%$ 的数据,满足 $n,m\le 10^4$。
对于 $50\%$ 的数据,$n,m\le 2\times 10^5$。
对于 $75\%$ 的数据,$n,m\le 5\times 10^5$。
对于 $100\%$ 的数据,满足 $1\le n,m\le 10^6$,$1\le f_i\le i-1$,$1\le a_i,b_i\le n$。