P2680 [NOIP 2015 提高组] 运输计划

题目背景

NOIP2015 Day2T3

题目描述

公元 $2044$ 年,人类进入了宇宙纪元。 L 国有 $n$ 个星球,还有 $n-1$ 条双向航道,每条航道建立在两个星球之间,这 $n-1$ 条航道连通了 L 国的所有星球。 小 P 掌管一家物流公司, 该公司有很多个运输计划,每个运输计划形如:有一艘物流飞船需要从 $u_i$ 号星球沿最快的宇航路径飞行到 $v_i$ 号星球去。显然,飞船驶过一条航道是需要时间的,对于航道 $j$,任意飞船驶过它所花费的时间为 $t_j$,并且任意两艘飞船之间不会产生任何干扰。 为了鼓励科技创新, L 国国王同意小 P 的物流公司参与 L 国的航道建设,即允许小 P 把某一条航道改造成虫洞,飞船驶过虫洞不消耗时间。 在虫洞的建设完成前小 P 的物流公司就预接了 $m$ 个运输计划。在虫洞建设完成后,这 $m$ 个运输计划会同时开始,所有飞船一起出发。当这 $m$ 个运输计划都完成时,小 P 的物流公司的阶段性工作就完成了。 如果小 P 可以自由选择将哪一条航道改造成虫洞, 试求出小 P 的物流公司完成阶段性工作所需要的最短时间是多少?

输入格式

第一行包括两个正整数 $n, m$,表示 L 国中星球的数量及小 P 公司预接的运输计划的数量,星球从 $1$ 到 $n$ 编号。 接下来 $n-1$ 行描述航道的建设情况,其中第 $i$ 行包含三个整数 $a_i, b_i$ 和 $t_i$,表示第 $i$ 条双向航道修建在 $a_i$ 与 $b_i$ 两个星球之间,任意飞船驶过它所花费的时间为 $t_i$。 接下来 $m$ 行描述运输计划的情况,其中第 $j$ 行包含两个正整数 $u_j$ 和 $v_j$,表示第 $j$ 个运输计划是从 $u_j$ 号星球飞往 $v_j$ 号星球。

输出格式

一个整数,表示小 P 的物流公司完成阶段性工作所需要的最短时间。

说明/提示

所有测试数据的范围和特点如下表所示 | 测试点编号 | $n = $ | $m = $ | 约定 | | :-: | :-: | :-: | :-: | | 1 | $100$ | $1$ | | | 2 | ^ | $100$ | 第 $i$ 条航道连接 $i$ 号星球与 $i + 1$ 号星球 | | 3 | ^ | ^ | | | 4 | $2000$ | $1$ | ^ | | 5 | $1000$ | $1000$ | 第 $i$ 条航道连接 $i$ 号星球与 $i + 1$ 号星球 | | 6 | $2000$ | $2000$ | ^ | | 7 | $3000$ | $3000$ | ^ | | 8 | $1000$ | $1000$ | | | 9 | $2000$ | $2000$ | ^ | | 10 | $3000$ | $3000$ | ^ | | 11 | $80000$ | $1$ | ^ | | 12 | $100000$ | ^ | ^ | | 13 | $70000$ | $70000$ | 第 $i$ 条航道连接 $i$ 号星球与 $i + 1$ 号星球 | | 14 | $80000$ | $80000$ |^ | | 15 | $90000$ | $90000$ | ^ | | 16 | $100000$ | $100000$ | ^ | | 17 | $80000$ | $80000$ | | | 18 | $90000$ | $90000$ | ^ | | 19 | $100000$ | $100000$ | ^ | | 20 | $300000$ | $300000$ | ^ | | 所有数据 | | | $1 \le a _ i, b _ i, u _ j, v _ j \le n$,$0 \le t _ i \le 1000$ | **请注意常数因子带来的程序效率上的影响。**