IOI 中心是一个配备了生活设施的训练中心。这里有着为大型团体设置的饮食区。在饮食区内,依次排列着
今天有
在这个饮食区中,有时商店会给予在他们的队列中的顾客免费的甜点。在饮食区中工作的 JOI 君的工作内容是记录被给予免费甜点的顾客所在的团体编号。
没有顾客会在关门的商店前排队。今天,当所有商店都营业时,在队列中发生了
- 加入:对于编号在
到 之间(包括边界)的所有商店,来自 团体的 位顾客加入于队列的末尾。 - 离开:对于编号在
到 之间(包括边界)的所有商店,如果队列中有 或更多位顾客,于队列开头的前 位顾客离开队列。否则,所有顾客离开队列。 - 服务:如果在商店
前的队列中有 或更多位顾客,商店会给予队列中从开头数起第 位顾客一个免费甜点。否则商店的工作人员会吃掉免费甜点。
不幸的是,JOI 君丢失了被给予免费甜点的顾客所在的团体编号的记录。他决定利用上述
给出商店、团体、事件的数量,以及事件的详细信息,请编写一个程序确定每次“服务”时是否有顾客被给予了免费甜点。如果有顾客被给予了免费甜点,程序还应该确定这位顾客所在的团体的编号。
输入格式
第一行,三个正整数
接下来
令
- 如果
,同一行接下来四个正整数 。表示第 次事件为“加入”,并且对于编号在 到 之间(包括边界)的所有商店,来自 团体的 位顾客加入于队列的末尾。 - 如果
,同一行接下来三个正整数 。表示第 次事件为“离开”,并且对于编号在 到 之间(包括边界)的所有商店,如果队列中有 或更多位顾客,于队列开头的前 位顾客离开队列。否则,所有顾客离开队列。 - 如果
,同一行接下来两个正整数 。表示第 次事件为“服务”,并且如果在商店 前的队列中有 或更多位顾客,商店会给予队列中从开头数起第 位顾客一个免费甜点。否则商店的工作人员会吃掉免费甜点。
输出格式
对于每次“服务”事件,也就是所有满足 0
。
样例一
input
3 5 7 1 2 3 5 2 1 1 2 2 4 3 2 3 2 1 3 3 3 1 2 1 2 3 4 2 3 3 2
output
2 0 4
explanation
下面我们用顾客所在团体的整数序列表示队列。例如,如果有 3 个顾客在商店前的队列,而且他们从队头开始分别属于团体 1, 2, 2,我们就写作
在样例输入中,7 个事件发生了。
- 第一个事件是加入。2 个团体 5 的顾客加入了商店 2, 3 前的队列,之后商店 1, 2, 3 的队列变成
。 - 第二个事件是加入。4 个团体 2 的顾客加入了商店 1, 2 前的队列,之后商店 1, 2, 3 的队列变成
。 - 第三个事件是服务。商店 2 有 6 个顾客排队。由于 6 不小于 3,第三个顾客获得了一份免费甜点。第三个顾客属于团体 2,所以输出
2
. - 第四个时间是离开。商店 1, 2 均有至少 3 个顾客排队,因此分别有 3 个顾客离开了。由于商店 3 的队伍不到 3 个顾客,所有顾客均离开。之后商店 1, 2, 3 的队列变成
。 - 第五个事件是服务。商店 1 只有 1 个顾客排队,1 比 2 小,商店职员会把免费甜点吃掉,因此输出
0
。 - 第六个事件是加入。2 个团体 4 的顾客加入了商店 2, 3,之后商店 1, 2, 3 的队列变成
。 - 第七个事件是服务。商店 3 有 2 个顾客排队,因此第二个顾客获得了一份免费甜点。第二个顾客属于团体 4,所以输出
4
。
此样例满足子任务
样例二
input
3 4 7 1 1 2 1 1 1 1 3 4 1 2 2 3 1 2 1 3 1 1 1 2 2 1 3 1 1 3 3 2
output
4 0
explanation
此样例满足子任务
样例三
input
183326 218318 22 1 106761 160918 151683 574906362 3 68709 1 1 29240 156379 22166 957318472 1 14054 181502 82845 97183925 2 112033 122908 587808357 2 57819 160939 215041262 3 36674 524274467 1 35854 69866 32334 322730299 1 1384 7230 115069 454256926 1 44192 158235 8750 84192710 3 54457 1077490708 2 10592 110384 979714505 2 44594 79244 311724477 3 160965 97183926 1 88748 101697 39148 373927458 3 41166 58039001 1 91501 137591 205480 958877326 2 77775 169655 135756956 1 12497 57047 60918 15666764 1 47839 51716 144688 732270998 3 114514 774994894 3 48645 169986425
output
0 22166 32334 0 82845 8750 60918
限制与约定
本题采用捆绑测试。
对于
每个子任务的具体限制见下表:
子任务编号 | 分值 | 特殊限制 |
---|---|---|
无特殊限制 |
时间限制:
空间限制: