AT_pakencamp_2022_day1_g Ancestor Query

Description

$ N $ 頂点の根付き木が与えられます。頂点には $ 1 $ から $ N $ までの番号が振られており、根は頂点 $ 1 $ で、頂点 $ i\,(2\leq i\leq N) $ の親は頂点 $ P_i $ です。 $ Q $ 個の質問が与えられるので答えてください。 $ i $ 番目の質問では整数 $ X_i, Y_i $ が与えられます。頂点 $ X_i $ は頂点 $ Y_i $ の祖先であり、二頂点間の距離を $ d $ とすると $ d\geq2 $ です。頂点 $ X_i $ と $ Y_i $ を結ぶパス上の頂点の番号を順に $ v_0,v_1,\ldots,v_d $ (ただし、 $ v_0=X_i, v_d=Y_i $ )とするとき、 $ v_1 $ を出力してください。

Input Format

入力は以下の形式で標準入力から与えられます。 > $ N $ $ P_2 $ $ P_3 $ $ \ldots $ $ P_N $ $ Q $ $ X_1 $ $ Y_1 $ $ X_2 $ $ Y_2 $ $ \vdots $ $ X_Q $ $ Y_Q $

Output Format

$ Q $ 行出力してください。 $ i\, (1\leq i\leq Q) $ 行目には、 $ i $ 番目の質問に対する答えを出力してください。

Explanation/Hint

### Sample Explanation 1 $ 1 $ 番目のクエリにおいて、 $ (v_0,v_1,v_2,v_3)=(1,3,5,7) $ であり、 $ v_1=3 $ です。 $ 2 $ 番目のクエリにおいて、 $ (v_0,v_1,v_2)=(3,5,6) $ であり、 $ v_1=5 $ です。 $ 3 $ 番目のクエリにおいて、 $ (v_0,v_1,v_2)=(3,5,7) $ であり、 $ v_1=5 $ です。 ### Constraints - $ 3\leq N\leq 2\cdot 10^5 $ - $ 1\leq P_i\leq i-1\, (2\leq i\leq N) $ - $ 1\leq Q\leq 2\cdot 10^5 $ - $ 1\leq X_i,Y_i\leq N\, (1\leq i\leq Q) $ - 頂点 $ X_i $ は頂点 $ Y_i $ の祖先 $ (1\leq i\leq Q) $ - 頂点 $ X_i $ と頂点 $ Y_i $ の距離は $ 2 $ 以上