提示: 欢迎访问OurACM平台。
Problem 2029 买票问题

Accept: 116    Submit: 837
Time Limit: 5000 mSec    Memory Limit : 32768 KB

Problem Description

过年回家买票又排起了长队。刚开始队列为空的。 有四种情况: 1.队尾加进了一个编号为a,忍耐度为 b 的人,所有人的编号都不同。 2.队首的人买完票走了。 3.队列中忍耐度最低的人离开了队列。 4.在队伍变化的过程中,编号为x的人想知道他前面有多少人,如果人数大于 y 则他离开队伍。 所有人的编号和忍耐度都是一个整数(保证可以使用有符号32位整型保存),且都是唯一的。

Input

输入数据包含多组测试数据 输入数据第一行T表示操作的个数。(T <= 100000) 接着T行, add a b 表示队伍尾加入 编号a忍耐度b的人(a,b保证可以使用有符号32位整型保存) pop 队首的人买完票走了,如果队列为空则不执行此操作。 leave 队列中忍耐度最低的人离开了队列,如果队列为空则不执行此操作。 check x y在队伍变化的过程中,编号为x的人想知道他前面有多少人,如果人数大于 y 则他离开队伍,如果队列不含编号为x的人不执行此操作。(x,y保证可以使用有符号32位整型保存)

Output

对于第四种操作 输出编号为x的人前面的人数。

Sample Input

10 add 5 1 add 4 2 add 3 3 add 2 4 add 1 5 check 2 5 leave check 2 1 pop check 1 5

Sample Output

3 2 1

Source

福州大学第八届程序设计竞赛

Submit  Back  Status  Discuss