40pts求调QAQ
  • 板块P9518 queue
  • 楼主Raiden_Ei
  • 当前回复4
  • 已保存回复4
  • 发布时间2023/8/13 11:09
  • 上次更新2023/11/3 04:08:09
查看原帖
40pts求调QAQ
879632
Raiden_Ei楼主2023/8/13 11:09

5AC,4WA,2RE,1TLE

QAQ

#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;
}
2023/8/13 11:09
加载中...