[USACO11DEC] RoadBlock S / [USACO14FEB]Roadblock G/S
题目描述
每天早晨,FJ 从家中穿过农场走到牛棚。农场由 $N$ 块农田组成,农田通过 $M$ 条双向道路连接,每条路有一定长度。FJ 的房子在 $1$ 号田,牛棚在 $N$ 号田。没有两块田被多条道路连接,以适当的路径顺序总是能在农场任意一对田间行走。当 FJ 从一块田走到另一块时,总是以总路长最短的道路顺序来走。
FJ 的牛呢,总是不安好心,决定干扰他每天早晨的计划。它们在 $M$ 条路的某一条上安放一叠稻草堆,使这条路的长度加倍。牛希望选择一条路干扰使得 FJ 从家到牛棚的路长增加最多。它们请你设计并告诉它们最大增量是多少。
输入输出格式
输入格式
第 $1$ 行:两个整数 $N, M$。
第 $2$ 到 $M+1$ 行:第 $i+1$ 行包含三个整数 $A_i, B_i, L_i$,$A_i$ 和 $B_i$ 表示道路 $i$ 连接的田的编号,$L_i$ 表示路长。
输出格式
一个整数,表示通过使某条路加倍而得到的最大增量。
输入输出样例
输入样例 #1
5 7
2 1 5
1 3 1
3 2 8
3 5 7
3 4 3
2 4 7
4 5 2
输出样例 #1
2
说明
【样例说明】
若使 $3$ 和 $4$ 之间的道路长加倍,最短路将由 $1 \rightarrow 3 \rightarrow 4 \rightarrow 5$ 变为 $1 \rightarrow 3 \rightarrow 5$。
【数据规模和约定】
对于 $30\%$ 的数据,$N \le 70,M \le 1500$。
对于 $100\%$ 的数据,$1 \le N \le 100,1 \le M \le 5,000,1 \le L_i \le 1,000,000$。