refresh的停车场
输入
2 6 Add 18353364208 Add 18353365550 Add 18353365558 Add 18353365559 Del Out
结果
18353365558 18353364208
#include<stdio.h> #include<stdlib.h> #include<string.h> #include<queue> #include<stack> #include<string> #include <iostream> using namespace std; int main() { int n,m,k; string str, tel; while(~scanf("%d%d",&n,&m)) { k=0; bool flag=false;//bool只有false和true queue<string>Q;//字符串不能以%s输出 stack<string>P; while(m--) { cin>>str; if(str=="Add")//定义为string可直接比较str=="Add" { cin>>tel; if(k<n) { P.push(tel); k++; } else Q.push(tel); } if(str=="Del") { if(!P.empty()) { P.pop(); if(!Q.empty()) { P.push(Q.front()); Q.pop(); } else k--; } else flag=true; } if(str=="Out") { if(!Q.empty()) Q.pop(); else flag=true; } } if(flag) cout<<"Error "; else { while(!P.empty()) { cout<<P.top()<<" "; P.pop(); } } } return 0; }