#ASC202621. 环形零件传送带

环形零件传送带

题目描述

石宇浩学长给实验室装了一条环形零件传送带,本想让机器人自动取件,结果机器人只会盯着队首发呆。于是他决定用一个循环队列管理传送带上的零件。

系统依次处理 q 条命令:

  • ARRIVE x:编号为 x 的零件到达队尾;
  • SERVE:取走队首零件并输出其编号;若队列为空,输出 EMPTY;
  • SKIP:将队首零件移动到队尾;若队列为空,什么也不做;
  • FRONT:输出当前队首零件编号;若队列为空,输出 EMPTY;
  • SIZE:输出当前队列中的零件数量。

请按照命令模拟这条传送带。

输入格式

第一行输入一个整数 q。

接下来 q 行,每行输入一条命令。

输出格式

对于每条 SERVE、FRONT 或 SIZE 命令,输出一行相应结果。

样例

10
ARRIVE 101
ARRIVE 102
ARRIVE 103
FRONT
SKIP
SERVE
ARRIVE 104
SKIP
FRONT
SIZE
101
102
101
3

数据范围与限制

  • 1 <= q <= 200000;
  • 1 <= x <= 10^18;
  • 时间限制:1 秒;
  • 空间限制:64 MiB。