#P3501. 队列的基本操作
队列的基本操作
Description
队列是一种基本的数据结构。队列具有两种基本操作方式,push 和 pop。push 会将一个值会将其压入队列队尾,而 pop 将会从队列队头弹出。现在我们就来验证一下队列的使用。Input Format
首先输入整数 t(1≤t≤10),代表测试的组数,以后是 t 组输入。对于每组测试数据,第一行输入两个正整数 m(1≤m≤100)、n(1≤n≤1000),其中 m 代表当前队列的最大长度,n 代表本组测试下面要输入的操作数。
而后的 n 行,每行的第一个字符可能是 'P’ 或者 'O’ 或者 'A’;如果是 'P’,后面还会跟着一个整数,表示把这个数据写入队尾;如果是 'O’,表示队头元素出队;如果是 'A',表示询问当前队列头部的值。
我们保证所有队列中的数据绝对值不会超过 10^9。
Output Format
对于每组测试数据,根据其中的命令字符来处理队列;(1)对所有的 'P' 操作,如果队列满输出 'F',否则完成入队操作;
(2)对所有的 'A' 操作,如果队列空,则输出 'E',否则输出当时队头的值;
(3)对所有的 'O' 操作,如果队列空,则输出 'E',否则输出队列头部元素的值,并让其出队;
每个输出占据一行,每组测试数据(最后一组除外)完成后,输出一个空行。
2
5 12
A
P 9
A
P 6
P 3
P 10
P 8
A
P 2
O
O
O
2 5
P 1
P 3
O
P 5
AE
9
9
F
9
6
3
1
3