问题:
有t个团队的人正在排一个长队。每次新来一个人时,如果他有队友在排队,那么这个新人会插队到最后一个队友的身后。如果没有任何一个队友排队,则他会排到长队的队尾。
输入每个团队中所有队员的编号,要求支持如下3种指令(前两种指令可以穿插进行)
- ENQUEUE x:编号为x的人进入长队
- DEQUEUE: 长队列队首出队
- STOP: 停止模拟
对于每一个DEQUEUE指令,输出出对人的编号
解决:
#include<cstdio>
#include<queue> // 队列
#include<map>
using namespace std;
const int maxt = 1000 + 10;
int main()
{
int t, kase = 0;
while (scanf("%d", &t) ==