#P15877. [ICPC 2026 NAC] Cable Pruning
[ICPC 2026 NAC] Cable Pruning
说明
你正在帮助改造一个数据中心,以便为更多 GPU 腾出空间。多年来,数据中心中堆积了多余的网线,你被要求清理这些杂乱线缆,并尽可能多地回收未使用的线缆。
:::align{center}

样例输入 1 的示意图。属于同一耦合对的服务器用相同颜色表示。需要移除的线缆用虚线标出。 :::
数据中心有 台服务器和 条网线,每条网线连接两台服务器。每条网线都有一定的长度(单位:英尺)。网线中的流量是双向的,且数据中心初始是连通的:对于任意一对服务器 ,都存在一条由网线构成的路径从 到达 (可能经过中间服务器)。你通过审计数据中心网络流量,发现只有 个 耦合对 的服务器之间需要进行通信。(注意,有些服务器可能不属于任何耦合对,也可能属于两个或多个耦合对。)
现在,你需要从数据中心中移除尽可能多的网线总长度,但要保证所有耦合对之间保持连通:对于每一对服务器 ,必须存在一条由你保留的原始网线构成的路径,使得 能到达 。
请找出为了满足这一约束条件而必须保留的网线的最小总长度。
输入格式
输入的第一行包含两个空格分隔的整数 和 ,分别表示数据中心的服务器的数量和已发现的耦合对的数量。
接下来的 行描述了数据中心原有的网线。每行包含三个空格分隔的整数 、 和 ,表示有一条网线连接服务器 和 ,长度为 英尺。任意两台服务器之间至多有一条网线,且服务器与网线构成的图是连通的。
接下来的 行,每行包含两个空格分隔的整数 和 (,),描述一个耦合对的服务器。在移除网线后,每个耦合对必须仍然存在一条路径保持连通。所有耦合对互不相同, 与 视为相同,不会同时作为耦合对列出。
输出格式
输出一个整数:为了使所有 个耦合对之间保持连通,必须保留的网线的最小总长度(单位:英尺)。
8 3
5 3 5
1 7 20
3 8 8
7 5 15
5 2 12
1 6 9
5 1 10
7 4 7
3 4
8 2
1 7
57
5 1
1 3 3
4 2 4
3 4 2
5 2 2
4 1 6
2 1
9
提示
翻译由 DeepSeek V3.2 完成
京公网安备 11011102002149号