萌新求助30分,第1个样例最后一个输出不对(悬2关)
  • 板块P9518 queue
  • 楼主wangyinghao
  • 当前回复0
  • 已保存回复0
  • 发布时间2023/8/12 19:52
  • 上次更新2023/11/3 04:13:19
查看原帖
萌新求助30分,第1个样例最后一个输出不对(悬2关)
453759
wangyinghao楼主2023/8/12 19:52
#include<iostream>
#include<queue>
#include<map>
using namespace std;
queue<string> q;
map<string,bool> m;
string s;

int main(){
	ios::sync_with_stdio(0);
	int n,cnt=0;
	string c,cur="",cur2="";
	cin>>n;
	for(int i=1;i<=n;i++){
		cin>>s;
		if(s=="start"){
			cnt++;
			if(q.empty()) cout<<"Error"<<endl;
			else{
				if(cur!="") q.push(cur);
				if(cur2==q.front()){
					q.pop();
					q.push(cur2);
				}
				if(m[c]==0) q.pop();
				cur=q.front();
				cout<<cur<<" ";
				q.pop();
				if(!q.empty()){
					cur2=q.front();
					cout<<cur2;
				} 
				cout<<endl;
				
			}
		}
		if(s=="arrive"){
			cin>>c;
			if(m[c]) cout<<"Error"<<endl;
			else{
				cout<<"OK"<<endl;
				q.push(c);
				m[c]=1;
			}
		}
		if(s=="leave"){
			cin>>c;
			if(!m[c] || c==q.front()) cout<<"Error"<<endl; 
			else{
				cout<<"OK"<<endl;
				m[c]=0;
			} 
		}
	}
	return 0;
}
2023/8/12 19:52
加载中...