#2333. [SCOI2011] 棘手的操作

[SCOI2011] 棘手的操作

题目描述

N 个节点,标号从 1 N ,这 N 个节点一开始相互不连通。第 i 个节点的初始权值为 a[i] ,接下来有如下一些操作: U x y: 加一条边,连接第 x 个节点和第 y 个节点 A1 x v: 将第 x 个节点的权值增加 v A2 x v: 将第 x 个节点所在的 连通块的所有节点的权值都增加 v A3 v: 将所有节点的权值都增加 v F1 x: 输出第 x 个节点当前的权值 F2 x: 输出第 x 个节点所在的连通块中,权值最大的节点的权值 F3: 输出所有节点中,权值最大的节点的权值

输入格式

输入的第一行是一个整数 N ,代表节点个数。 接下来一行输入 N 个整数, a[1], a[2], …, a[N] ,代表 N 个节点的初始权值。 再下一行输入一个整数 Q ,代表接下来的操作数。 最后输入 Q 行,每行的格式如题目描述所示。

输出格式

对于操作 F1, F2, F3 ,输出对应的结果,每个结果占一行。

3
0 0 0
8
A1 3 -20
A1 2 20
U 1 3
A2 1 10
F1 3
F2 3
A3 -10
F3


-10

10

10

提示

对于30%的数据,保证 N<=100,Q<=10000 对于80%的数据,保证 N<=100000,Q<=100000 对于100%的数据,保证 N<=300000,Q<=300000 对于所有的数据,保证输入合法,并且 -1000<=v, a[1], a[2], …, a[N]<=1000

题目来源

Day2