P1041我们最好的最短路shortest

时间限制 1500 ms内存限制 512 MiB通过率 —
显示算法标签最短路 · Dijkstra · LCA · 倍增

【题目背景】

风暴散去后,SinCircle 将队伍走过的道路绘成地图。绝大多数道路构成清晰的骨架,只有少量道路穿过遗迹深处,SinCircle 希望借此迅速回答之后的行程安排。

我们最好的最短路插图

【题目描述】

给定一张包含 nn 个结点与 mm 条边的无向连通图。图中不存在自环与重边,每条边都有一个正整数长度。

接下来有 qq 次询问。每次询问给定两个结点 ui,viu_i,v_i,你需要求出从 uiu_iviv_i 的最短路长度。

【输入格式】

从文件 shortest.in\textbf{\textit{shortest.in}} 中读入数据。

输入的第一行包含一个非负整数 cc,表示测试点编号。c=0c=0 表示该测试点为样例。

第二行包含两个正整数 n,mn,m,分别表示图中的结点数与边数。

接下来 mm 行,每行包含三个正整数 ui,vi,diu_i,v_i,d_i,表示结点 uiu_iviv_i 之间有一条长度为 did_i 的无向边。

下一行包含一个正整数 qq,表示询问数量。

接下来 qq 行,每行包含两个正整数 ui,viu_i,v_i,表示一次询问。

【输出格式】

输出到文件 shortest.out\textbf{\textit{shortest.out}} 中。

对于每次询问输出一行一个整数,表示对应两点之间的最短路长度。

【样例 1 输入】

03 31 2 32 3 13 1 531 21 32 3

【样例 1 输出】

341

{{ render(json.dumps('\clearpage'), 'noi') }}

【样例 2 输入】

08 131 2 42 3 63 4 14 5 125 6 36 7 87 8 71 4 11 8 32 6 92 7 14 6 36 8 281 51 72 32 83 73 46 87 8

【样例 2 输出】

75677127

【说明/提示】

【样例 1 解释】

从结点 11 到结点 33 时,经过结点 22 的路径长度为 3+1=43+1=4,短于直接相连的长度 55

【样例 2 解释】

例如,从结点 11 到结点 55 的最短路可以依次经过结点 4,64,6,总长度为 1+3+3=71+3+3=7

【样例 3】

见选手目录下的 shortest/shortest3.in\textbf{\textit{shortest/shortest3.in}}shortest/shortest3.ans\textbf{\textit{shortest/shortest3.ans}}

该组样例符合测试点 121\sim 2 的数据范围。

【样例 4】

见选手目录下的 shortest/shortest4.in\textbf{\textit{shortest/shortest4.in}}shortest/shortest4.ans\textbf{\textit{shortest/shortest4.ans}}

该组样例符合测试点 343\sim 4 的数据范围。

【样例 5】

见选手目录下的 shortest/shortest5.in\textbf{\textit{shortest/shortest5.in}}shortest/shortest5.ans\textbf{\textit{shortest/shortest5.ans}}

该组样例符合测试点 565\sim 6 的数据范围。

【样例 6】

见选手目录下的 shortest/shortest6.in\textbf{\textit{shortest/shortest6.in}}shortest/shortest6.ans\textbf{\textit{shortest/shortest6.ans}}

该组样例符合测试点 7107\sim 10 的数据范围。

【数据范围】

注意本题特殊的数据范围。

对于全部测试数据,保证 1n,m,q1051\leq n,m,q\leq 10^5mn20m-n\leq 201di1091\leq d_i\leq 10^9

测试点编号n,m,qn,m,qdid_i特殊性质
121\sim 2300\leq 300106\leq 10^6
343\sim 4105\leq 10^5109\leq 10^9A
565\sim 6n,m105n,m\leq 10^5q300q\leq 300109\leq 10^9
7107\sim 10105\leq 10^5109\leq 10^9

特殊性质 A:保证给出的图是一棵树。

【题解】

已公开 1 篇题解,官方题解会优先显示。

查看题解