#abc267f. [abc267_f]Exactly K Steps

[abc267_f]Exactly K Steps

問題文

NN 頂点の木が与えられます。頂点には 1,dots,N1, \\dots, N の番号が付けられており、i,(1leqileqN1)i \\, (1 \\leq i \\leq N - 1) 番目の辺は頂点 Ai,BiA_i, B_i を結びます。

この木における頂点 u,vu, v距離を、頂点 uu から頂点 vv までの最短パス上にある辺の本数と定義します。

QQ 個のクエリが与えられます。i,(1leqileqQ)i \\, (1 \\leq i \\leq Q) 番目のクエリでは、整数 Ui,KiU_i, K_i が与えられるので、頂点 UiU_i からの距離がちょうど KiK_i であるような頂点の番号を任意に一つ出力してください。そのような頂点が存在しない場合は、-1 を出力してください。

制約

  • 2leqNleq2times1052 \\leq N \\leq 2 \\times 10^5
  • $1 \\leq A_i \\lt B_i \\leq N \\, (1 \\leq i \\leq N - 1)$
  • 与えられるグラフは木
  • 1leqQleq2times1051 \\leq Q \\leq 2 \\times 10^5
  • 1leqUi,KileqN,(1leqileqQ)1 \\leq U_i, K_i \\leq N \\, (1 \\leq i \\leq Q)
  • 入力は全て整数

入力

入力は以下の形式で標準入力から与えられる。

NN A1A_1 B1B_1 vdots\\vdots AN1A_{N-1} BN1B_{N-1} QQ U1U_1 K1K_1 vdots\\vdots UQU_Q KQK_Q

出力

QQ 行出力せよ。i,(1leqileqQ)i \\, (1 \\leq i \\leq Q) 行目には、頂点 UiU_i からの距離がちょうど KiK_i である頂点が存在するならその一例を、存在しないなら -1 を出力せよ。そのような頂点が複数存在する場合、どれを出力しても正解となる。


入力例 1

5
1 2
2 3
3 4
3 5
3
2 2
5 3
3 3

出力例 1

4
1
-1
  • 頂点 22 からの距離がちょうど 22 であるのは頂点 4,54, 5 の二つです。
  • 頂点 55 からの距離がちょうど 33 であるのは頂点 11 のみです。
  • 頂点 33 からの距離がちょうど 33 である頂点は存在しません。

入力例 2

10
1 2
2 3
3 5
2 8
3 4
4 6
4 9
5 7
9 10
5
1 1
2 2
3 3
4 4
5 5

出力例 2

2
4
10
-1
-1