#4446. 模拟队列
模拟队列
题目描述
实现一个队列,队列初始为空,支持以下四种操作:
push x– 向队尾插入一个数x;pop– 从队头弹出一个数;empty– 判断队列是否为空;query– 查询队头元素。
现在要对队列进行 N 个操作,其中的每个 empty 和 query 操作都要输出相应的结果。
输入格式
第一行包含整数 N,表示操作次数($1 \le N \le 10^6$)。
接下来 N 行,每行包含一个操作命令,命令为 push x、pop、empty、query 中的一种。
保证所有操作合法,即在执行 pop 或 query 时队列非空。
输出格式
对于每个 empty 和 query 操作,输出一个查询结果,每个结果占一行:
empty操作输出YES或NO;query操作输出队头元素的值(整数)。
样例输入 1
20
empty
push 1
push 2
push 3
push 4
push 5
push 6
pop
pop
pop
pop
empty
query
push 1
push 2
push 3
push 4
push 5
push 6
query
样例输出 1
YES
NO
5
5
数据范围
- $1 \le N \le 10^6$
- $1 \le x \le 10^9$
- 所有操作保证合法(在队列非空时执行
pop或query)