#SC2024SD4T9. 队列

队列

题目描述

小 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

【样例 #3】

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

【样例 #4】

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

【样例 #5】

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

【样例 #6】

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

【数据范围】

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.5×1052.5\times10^5
484\sim8 50005000 2.5×1072.5\times10^7
9109\sim10 2×1052\times10^5 10910^9 2×1092\times 10^9
112011\sim 20 2×10142\times10^{14}

附件,点击下载然后解压你就能看到后几组样例