P0832

[Usaco2007 Jan]Telephone Lines架设电话线

[Usaco2007 Jan]Telephone Lines架设电话线

农场主 John 打算将电话线接入自己的农场,但电信公司并不提供免费服务,因此他需要支付一定的费用。

农场周围有 NN 根废弃的电话线杆,依次编号为 11 到 NN,目前任意两根电话线杆之间都没有电话线相连。其中有 PP 对电话线杆可以架设电话线,其余电话线杆之间由于距离过远而无法连接。

第 ii 对可以连接的电话线杆分别为 AiA_i 和 BiB_i,架设在它们之间的电话线长度为 LiL_i。每一对无序点对 {Ai,Bi}\{A_i,B_i\} 在数据中最多出现 11 次。

编号为 11 的电话线杆已经接入全国电话网络,农场中的电话线路最终需要连接到编号为 NN 的电话线杆。因此,只需选择一条连接电话线杆 11 与电话线杆 NN 的路径,其他电话线杆不一定需要接入电话网络。

经过协商,电信公司同意免费架设其中由 John 指定的 KK 条电话线。对于其余需要付费的电话线,John 支付的总费用等于这些电话线中最长一条的长度。如果所选路径需要架设的电话线不超过 KK 条,则总费用为 00。

请计算 John 架设电话线所需支付的最少费用。

输入格式

第一行包含三个以空格分隔的整数 NN、PP 和 KK,分别表示电话线杆数量、可以架设电话线的电话线杆对数,以及可以免费架设的电话线数量。

接下来 PP 行,第 ii 行包含三个以空格分隔的整数 AiA_i、BiB_i 和 LiL_i,表示可以在电话线杆 AiA_i 与 BiB_i 之间架设一条长度为 LiL_i 的电话线。

输出格式

输出一个整数,表示 John 需要支付的最少费用。

如果无法连接电话线杆 11 与电话线杆 NN,输出 −1-1。

样例输入

5 7 1
1 2 5
3 1 4
2 4 8
3 2 3
5 2 9
3 4 7
4 5 6

样例输出

4

样例解释

可以选择路径 1→3→2→51\to 3\to 2\to 5,其中各条电话线的长度依次为 44、33 和 99。让电信公司免费架设长度为 99 的电话线后,剩余电话线中的最大长度为 44,因此最少费用为 44。

数据范围

  • 1≤N≤1031\le N\le 10^3;
  • 1≤P≤1041\le P\le 10^4;
  • 0≤K<N0\le K<N;
  • 1≤Li≤1061\le L_i\le 10^6;
  • 每一对无序点对 {Ai,Bi}\{A_i,B_i\} 最多出现 11 次。

来源与许可

本题为 USACO 2007 January 试题「Telephone Lines(架设电话线)」,题面与测试数据整理自 BZOJ。

样例 1

输入

5 7 1
1 2 5
3 1 4
2 4 8
3 2 3
5 2 9
3 4 7
4 5 6

输出

4