代码:
#include <iostream>
#include <list>
using namespace std;
int main(){
list<string> l;
int n;
cin >> n;
string t1="12345678910",t2="12345678910";
for (int i=0;i<n;++i){
char sss[7];
scanf("%s",sss);
string str(sss);
if (str=="start"){
if (t1!="12345678910"){
l.emplace_back(t1);
t1="12345678910";
if (t2!="12345678910"){
l.emplace_back(t2);
t2="12345678910";
}
}
if (l.size()==0){
printf("Error\n");
}
if (l.size()==1){
t1=l.front();
l.pop_front();
printf("%s\n",t1.c_str());
}else if (l.size()>=2){
t1=l.front();
l.pop_front();
t2=l.front();
l.pop_front();
printf("%s %s\n",t1.c_str(),t2.c_str());
}
}
if (str=="arrive"){
char ssss[15];
scanf("%s",ssss);
string x(ssss);
bool flag=false;
for (const auto &item : l){
if (item==x){
flag=true;
break;
}
}
if (flag || x==t1 || x==t2){
printf("Error\n");
}else{
l.emplace_back(x);
printf("OK\n");
}
}
if (str=="leave"){
char ssss[15];
scanf("%s",ssss);
string x(ssss);
int s1=l.size(),s2;
l.remove(x);
s2=l.size();
if (s1==s2){
printf("Error\n");
}else{
printf("OK\n");
}
}
}
return 0;
}