#AT2515. G - Distance Queries on a Tree
G - Distance Queries on a Tree
当前没有测试数据。
G - 树上距离查询
给定一个有 个节点的树 。 边 连接节点 和 ,并且其权重为 。
按照顺序处理 个查询。有两种查询如下所示。
- 1 : 将边 的权重改为 。
- 2 : 输出节点 和节点 之间的距离。
这里,树上节点 和 之间的距离是一条起点为 终点为 的路径上所有边权重之和的最小值。
限制条件
- 给定的图是一棵树
- 对于每一个第一种查询,
- .
- 对于每一个第二种查询,
- .
- 第二种查询至少有一个。
- 输入中的所有值都是整数。
输入
输入从标准输入开始,包含以下内容:
Query
Query
Query
这里,Query 表示第 个查询,并且满足以下格式中的一个。
1 $i$ $w$
2 $u$ $v$
输出
输出 行,其中 是第二种查询的数量。 第 行 () 应包含第 个第二种查询的答案。
样例 1
5
1 2 3
1 3 6
1 4 9
4 5 10
4
2 2 3
2 1 5
1 3 1
2 1 5
9
19
11
对应的初始树如图示所示。
每个查询的处理如下。
- 第一个查询要求输出节点 和节点 之间的距离。边 和边 依次构成一条连接它们的路径,路径上权重之和为 ,是最小值,因此输出 。
- 第二个查询要求输出节点 和节点 之间的距离。边 和边 依次构成一条连接它们的路径,路径上权重之和为 ,是最小值,因此输出 。
- 第三个查询将边 的权重改为 。
- 第四个查询要求输出节点 和节点 之间的距离。边 和边 依次构成一条连接它们的路径,路径上权重之和为 ,是最小值,因此输出 。
样例 2
7
1 2 1000000000
2 3 1000000000
3 4 1000000000
4 5 1000000000
5 6 1000000000
6 7 1000000000
3
2 1 6
1 1 294967296
2 1 6
5000000000
4294967296
注意:答案可能无法适合 位整数。
样例 3
1
1
2 1 1
0
样例 4
8
1 2 105
1 3 103
2 4 105
2 5 100
5 6 101
3 7 106
3 8 100
18
2 2 8
2 3 6
1 4 108
2 3 4
2 3 5
2 5 5
2 3 1
2 4 3
1 1 107
2 3 1
2 7 6
2 3 8
2 1 5
2 7 6
2 4 7
2 1 7
2 5 3
2 8 6
308
409
313
316
0
103
313
103
525
100
215
525
421
209
318
519