#P13638. [NWRRC 2021] Kaleidoscopic Route

    ID: 13651 远端评测题 2000ms 512MiB 尝试: 0 已通过: 0 难度: 6 上传者: 标签>图论2021Special Judge广度优先搜索 BFSICPCNWRRC

[NWRRC 2021] Kaleidoscopic Route

Description

Kaleidostan 有 nn 个城市,通过 mm 条双向道路相连。城市编号从 11nn。每条道路都有一个整数,称为“色彩度”。

Keanu 想从城市 11 前往城市 nn。他希望选择一条“最短”路线——即经过道路数最少的路线。在所有最短路线中,他又希望选择一条“万花筒”路线——即这条路线中道路的最大色彩度与最小色彩度之差尽可能大。请你帮助 Keanu 找到这样一条路线。

Input Format

第一行包含两个整数 nnmm,分别表示城市数和道路数(2n1052 \le n \le 10^51m21051 \le m \le 2 \cdot 10^5)。

接下来的 mm 行中,第 ii 行包含三个整数 viv_iuiu_icic_i,表示第 ii 条道路连接城市 viv_iuiu_i,且色彩度为 cic_i1vi,uin1 \le v_i, u_i \le nviuiv_i \neq u_i0ci1090 \le c_i \le 10^9)。

任意一对城市之间至多有一条道路。保证任意两个城市之间都可以通过道路互达。

Output Format

第一行输出一个整数 kk,表示所需路线经过的道路数。

第二行输出 k+1k+1 个整数 c0,c1,,ckc_0, c_1, \ldots, c_k,表示路线经过的城市序列(1cin1 \le c_i \le nc0=1c_0 = 1ck=nc_k = n)。

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

Hint

在示例测试中,所需路线经过 33 条道路,且其最大色彩度与最小色彩度之差为 82=68-2=6

由 ChatGPT 4.1 翻译