返回题目列表
COMP2521
队列 · 最终队列内容
队列 · 处理操作后剩下什么
读入 m 个操作(E v 入队 / D 出队),处理完后,从队首到队尾输出队列里还剩下的元素。enqueue / dequeue 已给好,请补全 printQueue。
关键:队列是环形的,元素从head开始、绕着数组排了count个。所以遍历要用items[(head + k) % CAP],k从 0 到count-1——别直接从 0 到 tail 顺着读,那样遇到回卷就乱了。
易错点:D在空队列上是无操作(什么都不做)。
输入
- 第 1 行:操作数
m。 - 接下来
m行:E v或D。
输出
- 一行:处理完后队列从队首到队尾的元素,每个后跟一个空格;队列空则只输出换行。
示例:输入 5 / E 1 / E 2 / E 3 / D / E 4 → 输出 2 3 4 (1 被出队,剩 2、3、4)。
样例
stdin
5 E 1 E 2 E 3 D E 4
期望输出
2 3 4
stdin
6 E 1 E 2 E 3 D D D
期望输出
c-dcc
14