#zDLybttg030203. 1496:【例 3】架设电话线

1496:【例 3】架设电话线

1496:【例 3】架设电话线

题目描述

在郊区有 NN 座通信基站,PP 条双向电缆,第 ii 条电缆连接基站 AiA_iBiB_i。特别地,11 号基站是通信公司的总站,NN 号基站位于一座农场中。现在,农场主希望对通信线路进行升级,其中升级第 ii 条电缆需要花费 LiL_i

电话公司正在举行优惠活动。农场主可以指定一条从 11 号基站到 NN 号基站的路径,并指定路径上不超过 KK 条电缆,由电话公司免费提供升级服务。农场主只需要支付在该路径上剩余的电缆中,升级价格最贵的那条电缆的花费即可。求至少用多少钱能完成升级。

一句话题意:在加权无向图上求出一条从 11 号结点到 NN 号结点的路径,使路径上第 K+1K+1 大的边权尽量小。

输入格式

第一行三个整数 N,P,KN, P, K

接下来 PP 行,每行三个整数 Ai,Bi,LiA_i, B_i, L_i

输出格式

若不存在从 11NN 的路径,输出 1-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

样例输出 #1

4

样例解释 #1

  • N=5N=5 个基站,P=7P=7 条电缆,可以免费升级 K=1K=1 条电缆。
  • 目标是找到一条从 1155 的路径,使得路径上第 22 大的边权最小(因为免费 11 条,剩下最贵的就是第 22 大)。
  • 一条可能的路径是:13251 \rightarrow 3 \rightarrow 2 \rightarrow 5
    • (1,3)(1,3) 权值 44
    • (3,2)(3,2) 权值 33
    • (2,5)(2,5) 权值 99
    • 排序后:9,4,39, 4, 3
    • 免费 11 条(最贵的 99 免费),剩下最贵的是 44
  • 另一条路径:13451 \rightarrow 3 \rightarrow 4 \rightarrow 5
    • (1,3)(1,3) 权值 44
    • (3,4)(3,4) 权值 77
    • (4,5)(4,5) 权值 66
    • 排序后:7,6,47, 6, 4
    • 免费 11 条(最贵的 77 免费),剩下最贵的是 66
  • 最优解是 44,对应路径 13251 \rightarrow 3 \rightarrow 2 \rightarrow 5(免费 99,支付 44)或其他同样结果的路径。

数据范围

  • 0K<N10000 \le K < N \le 1000
  • 1P20001 \le P \le 2000
  • 1Li1061 \le L_i \le 10^6(或合理范围内,题目未明确给出上界,但应在整数范围内)

时空限制

  • 时间限制:1000 ms
  • 内存限制:65536 KB

注意:本题需要将原问题转化为判定性问题,并使用二分答案结合最短路径(0-1 BFS 或 Dijkstra)来求解。