操作队列
有一个初始为空的队列,我们对这个队列进行n次操作,操作共分为2种:
1.1 x(将数字x放到队列的末尾)
2. 2(将队列最前面的数字弹出队列)
对于第2种操作,你需要把弹出的这个数字输出,如果进行操作2时,队列为空,则输出"empty"。
例如:n = 5,对应的操作为:
1 123 (操作后队列里面的元素为:123)
1 234(操作后队列里面的元素为:123, 234)
2(输出:123,操作后队列里面的元素为:234)
2(输出:234,操作后队列里面的元素为:空)
2(输出:empty)
对应后面3个第2类操作,你的程序需要输出,
123
234
empty
Input
第一行:1个数n(1 <= n <= 10000) 后面n行:每行1种操作,1 X或者2(0 <= x <= 10000)。
Output
对应所有操作2,输出被弹出的数或者"empty"。
Sample Input
5
1 123
1 234
2
2
Sample Output
123
234
empty
AC代码:有关队列的具体使用可戳💨C++队列和栈用法
#include<iostream>
#include<queue>
using namespace std;
int main()
{
int n,m;
string str;
queue<string>q;
cin>>n;
while(n--)
{
cin>>m;
if(m==1)
{
cin>>str;
q.push(str);
}
else
{
if(q.empty())
cout<<"empty"<<endl;
else
{
cout<<q.front()<<endl;
q.pop();
}
}
}
return 0;
}
永远相信美好🎈