#ddcc2017finale. [ddcc2017_final_e]足のばし

[ddcc2017_final_e]足のばし

問題文

高橋君は NN 頂点からなる木のぬいぐるみを持っています。 頂点には番号 1,2,...,N1, 2, ..., N がついています。

ii 番目の辺は頂点 ai,bia_i, b_i をつないでおり、長さは 11 です。

rmdist(u,v){\\rm dist}(u, v) を頂点 uu から頂点 vv への最短距離と定義します。すると木の直径は rmmax1u<vN(rmdist(u,v)){\\rm max}_{1 ≦ u < v ≦ N}({\\rm dist}(u, v)) となります。

青木君はこのぬいぐるみに対して、辺を 11 本選んでその長さを 11 増やす、というイタズラを何回か行いました。 イタズラの回数は K1,K2,...,KQK_1, K_2, ..., K_Q のどれかであることが分かっています。

また、青木君は直径の短い木のほうが好きなので、イタズラを全て終えた後の木の直径ができる限り短くなるように操作を行ったことが分かっています。

イタズラの回数が K1,K2,...,KQK_1, K_2, ..., K_Q の場合それぞれについて、イタズラを全て終えた後の木の直径を求めてください。

制約

  • 3N200,0003 ≦ N ≦ 200,000
  • 1ai,biN1 ≦ a_i, b_i ≦ N
  • 入力は木になっている
  • 1Q200,0001 ≦ Q ≦ 200,000
  • 0K1<K2<...<KQ10180 ≦ K_1 < K_2 < ... < K_Q ≦ 10^{18}

入力

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

NN a1a_1 b1b_1 a2a_2 b2b_2 :: aN1a_{N-1} bN1b_{N-1} QQ K1K_1 K2K_2 ... KQK_Q

出力

QQ 行出力してください。 ii 行目には、イタズラの回数を KiK_i としたときの、木の直径を出力してください。


入力例 1

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

出力例 1

2
3
4
4
5
6
6
7
8
8

入力例 2

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

出力例 2

6
7
7
7
8
8
8
9
9
9

入力例 3

6
6 3
3 4
3 2
3 1
1 5
31
0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30

出力例 3

3
4
4
4
5
6
6
6
7
8
8
8
9
10
10
10
11
12
12
12
13
14
14
14
15
16
16
16
17
18
18