#2818. 华丽的队列

华丽的队列

题目描述

每年,都有很多新同学来到我们学校,最近,我们学校的领导为了考验新同学的能力,想出了一个方法来测试:

领导们定义了一个队列,队列中的元素是顺序存放的,领导们还定义了队列的几种操作:

a) insert x ,向队列末尾添加一个元素x

b) delete ,删除队列前的第一个元素

c) MinElement 删除队列中的最小元素

提示:

1.insert的元素x(0x109)x(0\leqslant x\leqslant 10^9)

2.队列中的元素是唯一的,不会出现重复元素

3.对于每组测试数据,操作的数量N(0N5104)N(0\leqslant N\leqslant 5*10^4)

输入格式

首先一个正整数N,代表操作的数量:

接下来从2到N+1行:

每行开始一个字符串s,有3种字符串: insert , delete 或者 MinElement

对于insert 接下来有个整数x,代表插入队列的元素

对于delete ,删除队首的元素;不保证队列不为空,如果队列为空,则不操作

对于MinElement , 返回队列中的最小元素,并且把这个元素从队列中删除;不保证队列不为空,如果队列为空,则不操作

输出格式

对于每个操作,输出不同的答案:

对于insert ,输出队列中元素的总数n

对于delete ,删除队首的元素,并且输出这个队首元素x;如果队列为空,则不操作

对于MinElement , 输出队列中的最小元素x.并且把这个元素从队列中删除;如果队列为空,则不操作。

6
insert 1
insert 2
insert 3
insert 4
delete
MinElement
1
2
3
4
1
2

数据范围

x(0x109)x(0\leqslant x\leqslant 10^9)

N(0N5104)N(0\leqslant N\leqslant 5*10^4)