問題一覧 > 通常問題

No.898 tri-βutree

レベル : / 実行時間制限 : 1ケース 4.000秒 / メモリ制限 : 512 MB / 標準ジャッジ問題
タグ : / 解いたユーザー数 205
作問者 : niuez / テスター : Lemma299 polylogK
20 ProblemId : 3404 / 出題時の順位表 / 自分の提出
問題文最終更新日: 2019-10-06 22:59:43

注意

B問題(tri-βutree), E問題(K-ary εxtrεεmε), F問題(Query ζone) は順番に上位互換な問題になっています.

問題文

2019/10/4 21:46 問題文を修正しました.

niuez くんの住む街ではとある伝統があります.
街に生えている木から縁起の良い 3 頂点を含むように,なるべく小さく木を切り出して神木への「三つ木もの(みつぎもの)」(tri-butree)にするというものです.

0 から N1 までの番号のついた N 頂点,N1 辺からなる無向木があり,i (0i<N1)番目の辺は頂点 uivi を端点とし,wi の重みを持っています.
以下の Q 個の query を処理してください.

  • x y z
    • 木の連結成分のうち,互いに異なる頂点 x,y,z が含まれていて,かつ頂点数が最小であるような木の連結な部分グラフに含まれる辺の重みの総和を求める(2019/10/4 21:44 用語の誤りを修正しました).
    • このような木の連結な部分グラフは一意に定まることが証明出来ます.

入力

N
u0 v0 w0

uN2 vN2 wN2
Q
x0 y0 z0

xQ1 yQ1 zQ1
  • 3N105
  • 0ui,vi<N
    • uivi
    • (ui,vi)=(uj,vj)i=j
  • 1wi<109
  • 1Q105
  • 0xi,yi,zi<N
    • xi,yi,zi は互いに相異なる
  • 入力はすべて整数

出力

Q 行出力し,i 行目には i 番目の query の答えを整数で一行に出力してください.

サンプル

サンプル1
入力
7
0 1 1
0 2 2
1 3 3
1 4 4
2 5 5
2 6 6
3
0 1 2
0 3 4
3 5 6
出力
3
8
17

最初のクエリで, 頂点数が最小の連結成分は, 頂点0, 1, 2からなる連結成分です.
その連結成分に含まれる辺の重みの総和は1+2=3です.
次のクエリでは, 頂点0, 1, 3, 4からなる連結成分です.
含まれる辺の重みの総和は1+3+4=8です.
3つめのクエリでは, 頂点0, 1, 2, 3, 5, 6からなる連結成分です.
含まれる辺の重みの総和は1+3+2+5+6=17です.

提出するには、Twitter 、GitHub、 Googleもしくは右上の雲マークをクリックしてアカウントを作成してください。