问题说明
我们有一个有N个顶点编号为1到N,M条边编号为1到M的连通无向图。边i连接顶点Ui和顶点Vi,并且具有整数权重Wi。对于1≤s,t≤N,s=t,我们定义d(s,t)如下。
- 对于连接顶点s和顶点t的每条路径,考虑该路径上边的最大权重。d(s,t)是这些权重的最小值。
回答Q个查询。第j个查询如下。
- 给出Aj,Sj,Tj。当边Aj的权重增加1时,d(Sj,Tj)将增加多少?
注意,每个查询实际上不改变边的权重。
约束条件
- 2≤N≤2×105
- N−1≤M≤2×105
- 1≤Ui,Vi≤N
- Ui=Vi
- 1≤Wi≤M
- 给定的图是连通的。
- 1≤Q≤2×105
- 1≤Aj≤M
- 1≤Sj,Tj≤N
- Sj=Tj
- 输入中的所有值都是整数。
输入
输入以以下格式从标准输入给出:
N M
U1 V1 W1
⋮
UM VM WM
Q
A1 S1 T1
⋮
AQ SQ TQ
输出
输出Q行。第j行 (1≤j≤Q) 应包含第j个查询的答案。
示例输入 1
6 6
1 2 1
3 1 5
4 1 5
3 4 3
5 6 4
2 6 5
7
1 4 6
2 4 6
3 4 6
4 4 6
5 4 6
6 4 6
5 6 5
示例输出 1
0
0
0
0
0
1
1

上图显示了黑色表示的边的编号和蓝色表示的边的权重。
我们逐个解释第一个到第六个查询。
首先,考虑在给定图中d(4,6)。连接顶点4和顶点6的路径上边的最大权重是5,这是连接顶点4和顶点6的所有路径中的最小值,因此d(4,6)=5。
接下来,考虑当边x (1≤x≤6)的权重增加1时,d(4,6)的增量。当x=6时,我们有d(4,6)=6,增量为1。另一方面,当x=6时,我们有d(4,6)=5,增量为0。例如,当x=3时,连接顶点4和顶点6的路径上边的最大权重为6,但连接顶点4,顶点3,顶点1,顶点2,顶点6的路径上边的最大权重为5,因此d(4,6)仍然为5。
示例输入 2
2 2
1 2 1
1 2 1
1
1 1 2
示例输出 2
0
给定的图可能包含多条边。