CF1196F.K-th Path

提高+/省选-

通过率:0%

时间限制:2.50s

内存限制:256MB

AC君温馨提醒

该题目为【codeforces】题库的题目,您提交的代码将被提交至codeforces进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。

题目描述

You are given a connected undirected weighted graph consisting of nn vertices and mm edges.

You need to print the kk-th smallest shortest path in this graph (paths from the vertex to itself are not counted, paths from ii to jj and from jj to ii are counted as one).

More formally, if dd is the matrix of shortest paths, where di,jd_{i, j} is the length of the shortest path between vertices ii and jj (1≤i<j≤n1 \le i \lt j \le n), then you need to print the kk-th element in the sorted array consisting of all di,jd_{i, j}, where 1≤i<j≤n1 \le i \lt j \le n.

给你一个包含 nn 个顶点和 mm 条边的连通无向带权图。

你需要输出该图中第 kk 小的最短路径长度(不考虑从某顶点到其自身的路径;从顶点 ii 到 jj 的路径与从 jj 到 ii 的路径视为同一条路径)。

更准确地说,设 dd 为最短路径距离矩阵,其中 di,jd_{i, j} 表示顶点 ii 与 jj 之间的最短路径长度(1≤i<j≤n1 \le i \lt j \le n),则你需要输出由所有满足 1≤i<j≤n1 \le i \lt j \le n 的 di,jd_{i, j} 构成的数组经升序排序后的第 kk 个元素。

输入格式

The first line of the input contains three integers n,mn, m and kk (2≤n≤2⋅1052 \le n \le 2 \cdot 10^5, n−1≤m≤min⁡(n(n−1)2,2⋅105)n - 1 \le m \le \min\Big(\frac{n(n-1)}{2}, 2 \cdot 10^5\Big), 1≤k≤min⁡(n(n−1)2,400)1 \le k \le \min\Big(\frac{n(n-1)}{2}, 400\Big) — the number of vertices in the graph, the number of edges in the graph and the value of kk, correspondingly.

Then mm lines follow, each containing three integers xx, yy and ww (1≤x,y≤n1 \le x, y \le n, 1≤w≤1091 \le w \le 10^9, x≠yx \ne y) denoting an edge between vertices xx and yy of weight ww.

It is guaranteed that the given graph is connected (there is a path between any pair of vertices), there are no self-loops (edges connecting the vertex with itself) and multiple edges (for each pair of vertices xx and yy, there is at most one edge between this pair of vertices in the graph).

输入的第一行包含三个整数 nn、mm 和 kk(2≤n≤2⋅1052 \le n \le 2 \cdot 10^5,n−1≤m≤min⁡(n(n−1)2,2⋅105)n - 1 \le m \le \min\Big(\frac{n(n-1)}{2}, 2 \cdot 10^5\Big),1≤k≤min⁡(n(n−1)2,400)1 \le k \le \min\Big(\frac{n(n-1)}{2}, 400\Big)),分别表示图中顶点的数量、边的数量以及参数 kk 的值。

接下来是 mm 行,每行包含三个整数 xx、yy 和 ww(1≤x,y≤n1 \le x, y \le n,1≤w≤1091 \le w \le 10^9,x≠yx \ne y),表示一条连接顶点 xx 与 yy、权重为 ww 的边。

保证所给图是连通的(任意两个顶点之间均存在路径),且图中不存在自环(即没有连接顶点与其自身的边)和重边(即对任意一对顶点 xx 和 yy,图中至多只有一条连接它们的边)。

输出格式

Print one integer — the length of the kk-th smallest shortest path in the given graph (paths from the vertex to itself are not counted, paths from ii to jj and from jj to ii are counted as one).

输出一个整数——给定图中第 kk 小的最短路径的长度(不考虑从某顶点到其自身的路径;从顶点 ii 到 jj 的路径与从 jj 到 ii 的路径被视为同一条路径)。

输入输出样例

  • 输入#1

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

    输出#1

    3
  • 输入#2

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

    输出#2

    9

输入解题思路,AI测评打分。不知道怎么写?

首页