喺一個靚麗嘅校園入面,Panda 同佢班朋友約埋一齊食飯。佢哋好享受喺路上相處嘅時光,因為大家可以用心傾偈。
校園可以建模為一個有 $n$ 個節點同 $m$ 條帶權邊嘅連通無向圖。集合地點係商場,位於節點 $1$。有 $k$ 個朋友由唔同嘅節點出發前往商場。所有朋友都以相同速度移動(每單位時間移動 $1$ 單位距離),而且允許喺邊上嘅任意位置改變方向(詳見範例解釋)。
設 $t_{\text{meet}}$ 為令所有朋友都能夠喺該時間或之前到達商場嘅最早可能時間。基於呢個最早可能集合時間,請分別對每個朋友,求出喺最終全員喺商場匯合之前,佢最多可以有幾多總時間有人陪伴(即係至少有另一個朋友同佢處於圖上完全相同嘅位置,可以係某個節點或者某條邊上嘅某個位置)。
當考慮某個特定朋友 $i$ 嗰陣,所有其他朋友 $j \neq i$ 嘅路徑同移動策略都會被最佳化,以最大化朋友 $i$ 嘅有人陪伴時間,只要所有朋友都唔遲過 $t_{\text{meet}}$ 到達商場即可。
輸入格式
第一行包含一個整數 $T$ ($1 \le T \le 10^4$),代表測試數據嘅組數。
對於每組測試數據,第一行包含三個整數 $n, m, k$ ($2 \le n \le 3 \times 10^5$, $n - 1 \le m \le 10^6$, $2 \le k \le n$),分別代表節點數、邊數同埋朋友人數。
第二行包含 $k$ 個互不相同嘅整數 $a_1, a_2, \ldots, a_k$ ($1 \le a_i \le n$),代表各位朋友嘅起始節點。
接住落嚟嘅 $m$ 行,每行包含三個整數 $u, v, w$ ($1 \le u, v \le n$, $u \neq v$, $1 \le w \le 10^9$),表示節點 $u$ 同節點 $v$ 之間有一條長度為 $w$ 嘅邊。圖係連通嘅,而且冇重邊或者自環。
所有測試數據入面 $n$ 嘅總和唔超過 $3 \times 10^5$,$m$ 嘅總和唔超過 $10^6$。
輸出格式
對於每組測試數據,輸出一行,包含 $k$ 個用空格分隔嘅浮點數,每個數都精確到小數點後一位,分別代表每個朋友有人陪伴嘅最大時間。
範例
輸入格式 1
3 4 3 2 3 4 1 2 3 3 2 1 4 2 1 2 1 2 1 2 1 2 3 3 2 3 1 2 3 1 2 3 1 3 5
輸出格式 1
3.0 3.0 1.5 1.5 3.5 3.5 2.5
說明
對於範例入面嘅第三組測試數據,喺商場集合嘅最早時間係 $5$ 單位時間。
- 來自節點 $1$ 同節點 $2$ 嘅朋友可以喺 $1.5$ 單位時間後喺邊 $(1, 2)$ 嘅中點相遇,再用 $1.5$ 單位時間一齊行返商場,然後喺商場等 $2$ 單位時間,總共有 $3.5$ 單位時間嘅陪伴。
- 來自節點 $3$ 嘅朋友喺 $2.5$ 單位時間後喺邊 $(1, 3)$ 嘅中點同來自節點 $1$ 嘅朋友相遇,並用 $2.5$ 單位時間同佢一齊返去,總共有 $2.5$ 單位時間嘅陪伴。