M. 航班路线

    Type: Default 1000ms 256MiB

航班路线

You cannot submit for this problem because the contest is ended. You can click "Open in Problem Set" to view this problem in normal mode.

题目背景

翻译自 CSES-1196 题。

题目描述

你的任务是找出从 Syrjälä 到 Metsälä 的 kk 条最短航班路线。一个路线可以多次经过同一个城市。

注意:可能存在多个价格相同的路线,每条这样的路线都应该被考虑(请参考示例)。

输入格式

第一行包含三个整数 nnmm,和 kk:分别表示城市的数量、航班的数量和需要找到的最短路线的数量 kk。城市编号为 1,2,,n1,2,…,n,其中城市 11 是 Syrjälä,城市 nn 是 Metsälä。

接下来的 mm 行,每行描述一条航班,包含三个整数 aabb,和 cc:表示从城市 aa 到城市 bb 的一条单向航班,航班的价格为 cc

你可以假设从 Syrjälä 到 Metsälä 至少有 kk 条不同的路线。

输出格式

输出 kk 个整数:表示从 Syrjälä 到 Metsälä 的 kk 条最便宜路线的价格,并按照价格从小到大排序。

样例

4 6 3
1 2 1
1 3 3
2 3 2
2 4 6
3 2 8
3 4 1
4 4 7

样例1解释

最便宜的三条路线分别是:

  1. 1341 → 3 → 4(价格为 44
  2. 12341 → 2 → 3 → 4(价格为 44
  3. 1241 → 2 → 4(价格为 77

因此,输出价格分别为 444477

说明/提示

2n1052 \leq n \leq 10^5

1m21051 \leq m \leq 2 \cdot 10^5

1a,bn1 \leq a,b \leq n

1c1091 \le c \le 10^9

1k101 \leq k \leq 10

CSES4 图论

Not Claimed
Status
Done
Problem
36
Open Since
2025-5-21 0:00
Deadline
2025-5-31 23:59
Extension
24 hour(s)