#ABC301Ex. 距离之差

距离之差

距离之差

题目描述

我们有一个连通无向图,包含编号为 11NNNN 个顶点和编号为 11MMMM 条边。 第 ii 条边连接顶点 UiU_i 和顶点 ViV_i,权重为整数 WiW_i。 对 1s,tN, st1\le s,t \le N,\ s\neq t,定义 d(s,t)d(s,t) 如下。

对连接顶点 ss 和顶点 tt 的每一条路径,考虑该路径上的边的最大权重。d(s,t)d(s,t) 是所有这些值的最小值。

回答 QQ 个查询。第 jj 个查询如下。

给你 Aj,Sj,TjA_j,S_j,T_j。当边 AjA_j 的权重增加 11 时,d(Sj,Tj)d(S_j,T_j) 会增加多少?

注意,每个查询实际上并不会改变边的权重。

输入格式

输入按以下格式从标准输入给出:

NN MM
U1U_1 V1V_1 W1W_1
\vdots
UMU_M VMV_M WMW_M
QQ
A1A_1 S1S_1 T1T_1
\vdots
AQA_Q SQS_Q TQT_Q

输出格式

输出 QQ 行。 第 jj(1jQ)(1\le j \le Q) 应输出第 jj 个查询的答案。

样例

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
0
0
0
0
0
1
1

上图中黑色数字表示边的编号,蓝色数字表示边的权重。

下面说明第 1 到第 6 个查询。

首先,考虑原图中 d(4,6)d(4,6)。 路径 41264 \rightarrow 1 \rightarrow 2 \rightarrow 6 上的边的最大权重为 55,这是连接顶点 44 和顶点 66 的所有路径中的最小值,所以 d(4,6)=5d(4,6)=5

接下来,考虑当边 x (1x6)x\ (1 \le x \le 6) 的权重增加 11 时,d(4,6)d(4,6) 的增量。 当 x=6x=6 时,有 d(4,6)=6d(4,6)=6,增量为 11。另一方面,当 x6x \neq 6 时,有 d(4,6)=5d(4,6)=5,增量为 00。 例如,当 x=3x=3 时,路径 41264 \rightarrow 1 \rightarrow 2 \rightarrow 6 上的边的最大权重为 66,但路径 $4 \rightarrow 3 \rightarrow 1 \rightarrow 2 \rightarrow 6$ 上的边的最大权重为 55,所以 d(4,6)d(4,6) 仍为 55

2 2
1 2 1
1 2 1
1
1 1 2
0

给定图可能包含重边。

数据范围

  • 2N2×1052\le N \le 2\times 10^5
  • N1M2×105N-1\le M \le 2\times 10^5
  • 1Ui,ViN1 \le U_i,V_i \le N
  • UiViU_i \neq V_i
  • 1WiM1 \le W_i \le M
  • 给定图是连通的。
  • 1Q2×1051\le Q \le 2\times 10^5
  • 1AjM1 \le A_j \le M
  • 1Sj,TjN1 \le S_j,T_j \le N
  • SjTjS_j\neq T_j
  • 输入中的所有值均为整数。
难度 NOI/NOI+/CTS
通过率
尝试 0
已通过 0
ID
2930
类型
传统题
Time Limit
846ms
Memory Limit
1024MiB
上传者
标签