#4656. Transportation

0

Transportation

Transportation

题目描述

共和国 AtCoder 有 NN 个岛屿。 最初,所有岛屿都没有机场也没有港口,并且任意两座岛屿之间都没有道路。 国王 Takahashi 将提供一些岛屿间的交通方式。 具体来说,他可以任意次且按任意顺序执行下述操作。

选择一个整数 ii 满足 1≤i≤N1\leq i\leq N 并支付费用 XiX_i 在岛屿 ii 建造机场。 选择一个整数 ii 满足 1≤i≤N1\leq i\leq N 并支付费用 YiY_i 在岛屿 ii 建造港口。 选择一个整数 ii 满足 1≤i≤M1\leq i\leq M 并支付费用 ZiZ_i 建造一条双向道路,连接岛屿 AiA_i 和岛屿 BiB_i。

Takahashi 的目标是使得对任意不同的两座岛屿 UU 和 VV,在可以任意次且按任意顺序执行下列操作的情况下,都能从岛屿 UU 到达岛屿 VV。

当岛屿 SS 和 TT 都有机场时,可以从岛屿 SS 前往岛屿 TT。 当岛屿 SS 和 TT 都有港口时,可以从岛屿 SS 前往岛屿 TT。 当岛屿 SS 和 TT 由一条道路相连时,可以从岛屿 SS 前往岛屿 TT。

求 Takahashi 为实现目标所需支付的最小总费用。

输入格式

输入按下述格式由标准输入给出: NN MM X1X_1 X2X_2 …\ldots XNX_N Y1Y_1 Y2Y_2 …\ldots YNY_N A1A_1 B1B_1 Z1Z_1 A2A_2 B2B_2 Z2Z_2 ⋮\vdots AMA_M BMB_M ZMZ_M

输出格式

输出 Takahashi 为实现目标所需支付的最小总费用。

4 2
1 20 4 7
20 2 20 3
1 3 5
1 4 6
16
3 1
1 1 1
10 10 10
1 2 100
3
7 8
35 29 36 88 58 15 25
99 7 49 61 67 4 57
2 3 3
2 5 36
2 6 89
1 6 24
5 7 55
1 3 71
3 4 94
5 6 21
160

提示

2≤N≤2×1052 \leq N \leq 2\times 10^5 1≤M≤2×1051 \leq M \leq 2\times 10^5 1≤Xi≤1091\leq X_i\leq 10^9 1≤Yi≤1091\leq Y_i\leq 10^9 1\leq A_i<B_i\leq N 1≤Zi≤1091\leq Z_i\leq 10^9 (Ai,Bi)≠(Aj,Bj)(A_i,B_i)\neq (A_j,B_j),如果 i≠ji\neq j。 输入中的所有数值均为整数。Takahashi 将建造以下基础设施。

支付费用 X1=1X_1=1 在岛屿 11 建造机场。 支付费用 X3=4X_3=4 在岛屿 33 建造机场。 支付费用 Y2=2Y_2=2 在岛屿 22 建造港口。 支付费用 Y4=3Y_4=3 在岛屿 44 建造港口。 支付费用 Z2=6Z_2=6 建造一条连接岛屿 11 和岛屿 44 的道路。

然后,目标可在总费用 1616 下实现。 不存在以不超过 1515 的费用实现目标的方法,所以应当输出 1616。
并不要求三种设施都至少建造一次。

标签: AtCoder|abc270F

来源

AtCoder|abc270F