**
航电oj:ACboy needs your help again!
**
#题目描述
#大意为 IN 就输入数据 OUT 就输出数据 FIFO 表示要按照顺序输出输入的数据 FILO 就是逆序输出数据
#别多想 就是队列和栈
#知识点
队列 栈
#代码
#include<cstdio>
#include<algorithm>
#include<iostream>
#include<cstring>
#include<stdio.h>
#include<stack>
#include<queue>
using namespace std;
int n,data[1000],cnt,head,last,temp;
string str,ark;
int main()//好吧 这就是要你使用栈 队列 不是去弄一个差不多了东西,吃力不讨好 还错了 额
{
int t;
cin >> t;
while(t--)
{
stack <int> st;
queue <int> qu;
cin >> n >> str;
for(int i=1; i<=n; i++)
{
cin >> ark;
if(!ark.compare("IN"))
{
cin >>temp;
if(!str.compare("FIFO"))//循序
{
qu.push(temp);
}
else //逆序
{
st.push(temp);
}
}
else //输出
{
if(!str.compare("FIFO"))//循序
{
if(qu.empty())//空1 不空0
{
cout << "None" <<endl;
}
else
{
cout << qu.front()<<endl;
qu.pop();
}
}
else //逆序
{
if(st.empty())
{
cout << "None" <<endl;
}else
{
cout << st.top() <<endl;
st.pop();
}
}
}
}
}
return 0;
}
#总结
别多想 这个题就是按照队列和栈来出的 自己写一个方法难免有想不到的地方导致错误