#P9588. 「MXOI Round 2」队列

    ID: 8822 Type: RemoteJudge 1000ms 512MiB Tried: 0 Accepted: 0 Difficulty: 4 Uploaded By: Tags>线段树倍增二分平衡树树状数组单调队列洛谷原创O2优化优先队列前缀和队列洛谷月赛

「MXOI Round 2」队列

题目描述

小 C 有一个队列,他要对这个队列进行 qq 次操作。操作共四种,参数分别如下:

1 x1\ x:这是第一种操作,表示从队尾依次插入 1,2,3,,x1,2,3,\cdots,x

2 y2\ y:这是第二种操作,表示弹出队头的前 yy 个元素;

3 z3\ z:这是第三种操作,表示查询队列中的第 zz 个元素;

44:这是第四种操作,表示查询队列中所有元素的最大值。

你需要帮助他维护这个队列,并对于每个第三种操作和第四种操作,输出查询的答案。

输入格式

第一行两个整数 c,qc,q,其中 cc 表示测试点编号。c=0c=0 表示该测试点为样例。

接下来 qq 行,每行 121 \sim 2 个整数,表示一个操作,格式见【题目描述】。

输出格式

对于每个第三种操作和第四种操作,输出一行一个整数,表示查询的答案。

0 9
1 5
1 3
2 2
1 4
3 6
3 8
2 4
4
3 3
3
2
4
1

提示

【样例解释 #1】

在进行第四次操作后,队列中的元素依次为 3,4,5,1,2,3,1,2,3,43,4,5,1,2,3,1,2,3,4

在进行第七次操作后,队列中的元素依次为 2,3,1,2,3,42,3,1,2,3,4

【样例 #2】

见附加文件中的 queue/queue2.inqueue/queue2.ans

该样例满足测试点 11 的限制。

【样例 #3】

见附加文件中的 queue/queue3.inqueue/queue3.ans

该样例满足测试点 44 的限制。

【样例 #4】

见附加文件中的 queue/queue4.inqueue/queue4.ans

该样例满足测试点 1111 的限制。

【样例 #5】

见附加文件中的 queue/queue5.inqueue/queue5.ans

该样例满足测试点 1515 的限制。

【样例 #6】

见附加文件中的 queue/queue6.inqueue/queue6.ans

该样例满足测试点 2020 的限制。

【数据范围】

x\sum x 表示单个测试点内 xx 之和。

对于 100%100\% 的数据,1q2×1051 \le q \le 2\times 10^51x,y,z1091 \le x,y,z \le 10^90x2×10140 \le \sum x \le 2\times10^{14},保证在进行第二种操作前队列内元素个数不小于 yy,在进行第三种操作前队列内元素个数不小于 zz,在进行第四种操作前队列内元素个数大于 00

测试点编号 qq \le xx \le x\sum x \le 特殊性质
131\sim3 500500 2×1052\times10^5 C
484\sim8 50005000 2×1072\times10^7
9109\sim10 2×1052\times10^5 10910^9 2×10142\times10^{14} AB
111211\sim12 B
131413\sim14 2×1092\times10^9 AC
151615\sim16 C
171817\sim18 500500 2×1072\times10^7
1919 10910^9 2×1092\times10^9
2020 2×10142\times10^{14}

特殊性质 A:没有第二种操作。

特殊性质 B:没有第三种操作。

特殊性质 C:没有第四种操作。