社区讨论
40pts求调QAQ
P9518queue参与者 2已保存回复 4
讨论操作
快速查看讨论及其快照的属性,并进行相关操作。
- 当前回复
- 4 条
- 当前快照
- 1 份
- 快照标识符
- @lo1vg7ah
- 此快照首次捕获于
- 2023/10/23 03:38 2 年前
- 此快照最后确认于
- 2023/11/03 04:08 2 年前
5AC,4WA,2RE,1TLE
QAQ
CPP#include<bits/stdc++.h>
using namespace std;
int n,fl;string s,t;
map<string,int>m;
deque<string>v,e;
int main(){
cin>>n;
for(int i=1;i<=n;i++){
cin>>s;
if(s=="start"){
if(!v.size()){
cout<<"Error\n";
continue;
}
if(!fl){
fl=1;
for(int i=0;i<min(2,(int)(v.size()));i++){
e.push_back(v[i]);
cout<<e[i]<<' ';
}
cout<<endl;
continue;
}
v.erase(v.begin(),v.begin()+e.size());
for(int i=0;i<e.size();i++)v.push_back(e[i]);
e.clear();
for(int i=0;i<min(2,(int)(v.size()));i++){
e.push_back(v[i]);
cout<<e[i]<<' ';
}
cout<<endl;
continue;
}
cin>>t;
if(s=="arrive"){
if(m[t]==1){
cout<<"Error\n";
continue;
}
else{
v.push_back(t);
m[t]=1;
cout<<"OK\n";
continue;
}
}
if(s=="leave"){
if(((e[0]==t||e[1]==t)&&fl)||m.count(t)==0){
cout<<"Error\n";
continue;
}
else{
v.erase(remove(v.begin(),v.end(),t));
m[t]=0;
cout<<"OK\n";
continue;
}
}
}
return 0;
}
回复
共 4 条回复,欢迎继续交流。
正在加载回复...