問題一覧 > 通常問題

No.2604 Initial Motion

レベル : / 実行時間制限 : 1ケース 3.000秒 / メモリ制限 : 512 MB / 標準ジャッジ問題
タグ : / 解いたユーザー数 71
作問者 : 👑 amentorimaru / テスター : 👑 seekworser 👑 獅子座じゃない人
2 ProblemId : 10321 / 出題時の順位表 / 自分の提出
問題文最終更新日: 2024-01-11 12:53:01

問題文

とある仮想空間ではマップにある武器を拾って戦うゲームがあります。


このゲームを KK 人のユーザーで遊ぶことになりました。このゲームはマップが NN 頂点 MM 辺の連結な単純無向グラフで構成されており、辺 ii は頂点 UiU_iViV_i を双方向で結んでおり、その間の距離は DiD_i です。

ゲーム開始時ユーザー ii は 頂点 AiA_i にいます。また、頂点 ii には BiB_i 個の武器が落ちています。ユーザーは落ちている武器を一つまで拾うことができますが、誰かが拾ってしまった武器は拾えません。

開始時は全てのユーザーが武器を持っていないため全員が頂点間を移動をしながら武器を拾うところから始めます。(移動しなくても武器がある場合、そのまま拾う事ができます)

ここで武器の合計数は KK 以上あることが保証されています。全てのユーザーが武器を拾うまでの全員の移動距離の合計としてありうるものの最低値を求めてください。

入力

K N MK\ N\ M
A1 A2 AKA_1\ A_2\ \dots A_K 
B1 B2 BNB_1\ B_2\ \dots B_N 
U1 V1 D1U_1\ V_1\ D_1
U2 V2 D2U_2\ V_2\ D_2
\vdots
UM VM DMU_M\ V_M\ D_M

  • 入力は全て整数
  • 1K2000 1\le K \le 2000
  • 1N2000 1\le N \le 2000
  • N1Mmin(N(N1)2,2000) N-1\le M \le \min \left( \frac{N(N-1)}{2},2000 \right)
  • 1AiN 1\le A_i \le N
  • 0BiK 0\le B_i \le K
  • KBi K \le \sum B_i
  • 1Ui,ViN1\le U_i,V_i \le N
  • UiVi U_i \neq V_i
  • 1Di10121\le D_i \le 10^{12}
  • 与えられるグラフは単純かつ連結

出力

答えを出力せよ

サンプル

サンプル1
入力
4 5 4
1 1 1 4
1 1 2 0 0
1 2 4
1 3 5
4 5 1
5 3 3
出力
13

例えばユーザー 11 は頂点 11 からスタートし、移動せず距離 00 で武器を拾うことができます。

ユーザー 22 は頂点 11 からスタートし、頂点 22 に移動して 距離 44 で武器を拾うことができます。

ユーザー 33 は頂点 11 からスタートし、頂点 33 に移動して 距離 55 で武器を拾うことができます。

ユーザー 44 は頂点 44 からスタートし、頂点 55 に移動した後頂点 33 に移動して 距離 44 で二つ目の武器を拾う事ができます。

このとき全てのユーザーの移動距離の合計は 0+4+5+4=130+4+5+4=13 となります。

これよりも少ない移動距離で全員が武器を拾うことはできないため、 1313 を出力します。

サンプル2
入力
4 5 4
2 3 4 5
4 0 0 0 0
1 2 1
1 3 1
1 4 1
1 5 1
出力
4

全員が一斉に頂点 11 に向かいます。

サンプル3
入力
20 10 10
1 2 3 4 5 6 7 8 9 10 1 2 3 4 5 6 7 8 9 10
4 0 0 3 3 0 1 5 0 4
1 2 4
2 3 2
3 4 3
4 5 1
5 6 2
6 7 4
7 8 5
2 9 3
6 9 1
9 10 8
出力
54

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