#5014. Retroactive Range Chmax

0

Retroactive Range Chmax

Retroactive Range Chmax

题目描述

你被给予一个长度为 NN 的整数序列 A=(A1,A2,…,AN)A=(A_1,A_2,\ldots,A_N)。 按顺序处理 QQ 个操作。共有三种类型的操作:

类型 1 操作由整数组三元组 (l,r,x)(l,r,x) 表示,对应于将每个 i=l,l+1,…,ri=l,l+1,\ldots,r 的 AiA_i 替换为 max⁡{Ai,x}\max\lbrace A_i,x\rbrace。 类型 2 操作由一个整数 ii 表示,对应于取消第 ii 个操作(保证第 ii 个操作是类型 1 且尚未被取消)。新的序列 AA 可通过从初始状态开始执行所有未被取消的类型 1 操作得到。 类型 3 操作由一个整数 ii 表示,对应于输出当前的 AiA_i 的值。

输入格式

输入从标准输入按以下格式给出: NN A1A_1 A2A_2 …\ldots ANA_N QQ query⁡1\operatorname{query}_1 query⁡2\operatorname{query}_2 ⋮\vdots \operatorname_Q

这里,query⁡k (1≤k≤Q)\operatorname{query}_k\ (1\leq k\leq Q) 表示第 kk 个操作,且根据第 kk 个操作的类型,给出以下之一。 对于类型 1 操作,给出以下内容,表示第 kk 个操作是由 (l,r,x)(l,r,x) 表示的类型 1 操作: 11 ll rr xx

对于类型 2 操作,给出以下内容,表示第 kk 个操作是由 ii 表示的类型 2 操作: 22 ii

对于类型 3 操作,给出以下内容,表示第 kk 个操作是由 ii 表示的类型 3 操作: 33 ii

输出格式

设 qq 为类型 3 操作的数量。输出 qq 行。 第 ii 行 (1≤i≤q)(1\leq i\leq q) 应当包含第 ii 个给定的类型 3 操作应当输出的值。

6
2 7 1 8 2 8
15
3 1
3 3
3 4
1 1 5 4
3 1
3 3
3 4
1 3 6 9
3 1
3 3
3 4
2 4
3 1
3 3
3 4
2
1
8
4
4
8
4
9
9
2
9
9
24
721 78 541 256 970 478 370 467 344 542 43 166 619 17 592 222 983 729 338 747 62 452 815 838
35
3 10
3 8
3 8
3 13
3 9
1 1 17 251
3 3
3 19
3 13
3 22
3 1
3 15
3 18
3 10
3 15
1 16 19 883
1 8 23 212
3 5
3 13
2 6
3 15
1 5 18 914
2 17
3 20
1 23 23 56
3 13
2 25
3 13
3 13
3 10
2 16
1 17 22 308
3 19
3 17
3 7
542
467
467
619
344
541
338
619
452
721
592
729
542
592
970
619
592
747
914
914
914
914
338
983
914

提示

1≤N≤2×1051\leq N\leq2\times10^5 1≤Ai≤109 (1≤i≤N)1\leq A_i\leq10^9\ (1\leq i\leq N) 1≤Q≤2×1051\leq Q\leq2\times10^5 在类型 1 操作中,1≤l≤r≤N1\leq l\leq r\leq N 且 1≤x≤1091\leq x\leq10^9。 在类型 2 操作中,ii 不大于此前给定的操作数量,且 1≤i1\leq i。 在类型 2 操作中,第 ii 个操作为类型 1。 在类型 2 操作中,相同的 ii 不会出现多次。 在类型 3 操作中,1≤i≤N1\leq i\leq N。 所有输入值均为整数。最初,序列 AA 为 (2,7,1,8,2,8)(2,7,1,8,2,8)。 对于第 1、2、3 个操作,输出 A1,A3,A4A_1, A_3, A_4 的值,分别为 2,1,82,1,8。 第 4 个操作将 A1,A2,A3,A4,A5A_1,A_2,A_3,A_4,A_5 的值替换为 max⁡{Ai,4}\max\lbrace A_i,4\rbrace。 该操作之后,AA 为 (4,7,4,8,4,8)(4,7,4,8,4,8)。 对于第 5、6、7 个操作,此时输出 A1,A3,A4A_1,A_3,A_4 的值,分别为 4,4,84,4,8。 第 8 个操作将 A3,A4,A5,A6A_3,A_4,A_5,A_6 的值替换为 max⁡{Ai,9}\max\lbrace A_i,9\rbrace。 该操作之后,AA 为 (4,7,9,9,9,9)(4,7,9,9,9,9)。 对于第 9、10、11 个操作,此时输出 A1,A3,A4A_1,A_3,A_4 的值,分别为 4,9,94,9,9。 第 12 个操作取消第 4 个操作。 该操作之后,AA 为 (2,7,9,9,9,9)(2,7,9,9,9,9)。 对于第 13、14、15 个操作,此时输出 A1,A3,A4A_1,A_3,A_4 的值,分别为 2,9,92,9,9。

标签: AtCoder|abc342G

来源

AtCoder|abc342G