bzoj#P1455. 罗马游戏

罗马游戏

题目描述

罗马皇帝很喜欢玩杀人游戏。 他的军队里面有 nn 个士兵,每个士兵都是一个独立的团。最近举行了一次平面几何测试,每个士兵都得到了一个分数。 皇帝很喜欢平面几何,他对那些得分很低的士兵嗤之以鼻。

他决定玩这样一个游戏。 它可以发两种命令:

M i jii 所在的团和 jj 所在的团合并成一个团。如果 i,ji,j 之间有一个士兵是死人或 i,ji,j 在同一个团里,那么就忽略此命令。 K iii 所在的团里面得分最低的士兵杀死。如果 ii 这个士兵已经死了,这条命令就忽略。

皇帝希望他每发布一条 K i 命令,下面的将军就把被杀的士兵的分数报上来 (如果这条命令被忽略,那么就报 00 分)。

保证士兵的分数互不相同。

输入格式

第一行一个正整数 nn,表示士兵数。

第二行 nn 个正整数 a1,a2,,ana_1,a_2,\cdots,a_n,其中 aia_i 表示编号为 ii 的士兵的分数。

第三行一个整数 mm

接下去 mm 行,一行二或三个正整数,表示一条命令。

输出格式

如果命令是 K i,请输出被杀士兵的分数(如果这个人不存在,就输出 00)。

样例输入

5
100 90 66 99 10
7
M 1 5
K 1
K 1
M 2 3
M 3 4
K 5
K 4

样例输出

10
100
0
66

数据范围与约定

对于 100%100\% 的数据,1n106,1m105,0ai1071\le n\le10^6,1\le m\le10^5,0\le a_i\le10^7