最新公告
  • 欢迎您光临信息学奥赛网,一个优质的信息学编程题库和信息学编程学习资源专业网站。欢迎加入VIP
  • 星际快递网络规划

    正文概述 陈老师   2026-01-20 15:15:27  

    题目描述

    在银河快递联盟的物流网络中,有 nn 个星际中转站和 mm 条超空间货运通道(无向边)。每条通道连接两个中转站,并需要消耗一定的能量燃料 ww 来维持运作。联盟工程师小智发现,只需要重点关注其中的 kk 个核心中转站,就能优化整个物流网络的效率。

    定义 D(u, v)D(u,\ v) 为从星际中转站 uuvv 的最短燃料消耗路径。现在,小智从所有中转站中选出了 kk 个核心中转站 {a1, a2, , ak}\{a_1,\ a_2,\ …,\ a_k\},这 kk 个点组成了一个新网络,边 (i, j)(i,\ j) 的权值为原图中的 D(ai, aj)D(a_i,\ a_j)

    小智的任务是计算这个新网络的最小燃料消耗总和,即新的无向图的最小生成树的所有边的权值之和。

    输入格式

    输入包含多组测试数据。

    第一行输入 T (1T2×104)T\ (1≤T≤2\times 10^4),表示测试数据组数。

    每组数据:第一行三个整数 n, m, kn,\ m,\ k1n5×1051≤n≤5\times10^5n1m5×105n−1≤m≤5\times10^51kn1≤k≤n),分别表示中转站数量、货运通道数量和核心中转站数量。

    接下来 mm 行,每行三个整数 x, y, wx,\ y,\ w (1x, yn, 1w108)(1\le x,\ y\le n,\ 1\le w\le 10^8),表示中转站 xxyy 之间有一条燃料消耗为 ww 的货运通道。

    最后一行 kk 个整数,表示选定的核心中转站编号。

    保证所有测试样例的 n, mn,\ m 之和均不超过 5×1055\times10^5

    保证给出的图是连通的。

    输出格式

    对于每组数据,输出一个整数,表示最小生成树的边的权值之和。

    样例

    2
    5 4 3
    1 2 3
    1 3 5
    1 4 7
    2 5 6
    3 4 5
    3 6 3
    1 2 4
    1 3 5
    2 3 2
    3 2 7
    1 1 4
    2 2 6
    1 2 3
    
    26
    6
    

    样例1解释

    第一组测试样例的原图和新图如下:

    可以发现:

    • D(1, 2)=3, D(1, 3)=5, D(1, 4)=7, D(1, 5)=9D(1,\ 2)=3,\ D(1,\ 3)=5,\ D(1,\ 4)=7,\ D(1,\ 5)=9
    • D(2, 3)=8, D(2, 4)=10, D(2, 5)=6D(2,\ 3)=8,\ D(2,\ 4)=10,\ D(2,\ 5)=6
    • D(3, 4)=12, D(3, 5)=14D(3,\ 4)=12,\ D(3,\ 5)=14
    • D(4, 5)=16D(4,\ 5)=16

    其中,小智只关心 3, 4, 53,\ 4,\ 5 这三个点,可以发现最后的生成树只包含 (3, 4), (3, 5)(3,\ 4),\ (3,\ 5) 这两条边,故生成树的权值为 12+14=2612+14=26

    信息学奥赛网,一个优质的信息学奥赛学习资源平台!
    信息学奥赛网 » 星际快递网络规划