#P3690. 【模板】动态树(LCT)
【模板】动态树(LCT)
题目描述
给定 个点以及每个点的权值,要你处理接下来的 个操作。
操作有四种,操作从 到 编号。点从 到 编号。
0 x y
代表询问从 到 的路径上的点的权值的 和。保证 到 是联通的。1 x y
代表连接 到 ,若 到 已经联通则无需连接。2 x y
代表删除边 ,不保证边 存在。3 x y
代表将点 上的权值变成 。
输入格式
第一行两个整数,分别为 和 ,代表点数和操作数。
接下来 行,每行一个整数,第 行的整数 表示节点 的权值。
接下来 行,每行三个整数,分别代表操作类型和操作所需的量。
输出格式
对于每一个 号操作,你须输出一行一个整数,表示 到 的路径上点权的 和。
3 3
1
2
3
1 1 2
0 1 2
0 1 1
3
1
5 14
114
514
19
19
810
1 1 2
0 1 2
2 1 2
1 1 2
1 2 3
2 1 3
1 1 3
1 4 5
1 2 5
0 3 5
0 3 4
3 5 233333
0 1 5
0 2 5
624
315
296
232709
232823
提示
数据规模与约定
对于全部的测试点,保证:
- ,,。
- 对于操作 ,保证 。
- 对于操作 ,保证 ,。