蒟蒻的奇妙做法80ptsWA#8#9求条
  • 板块P9518 queue
  • 楼主lfxxx_
  • 当前回复0
  • 已保存回复0
  • 发布时间2024/1/24 21:14
  • 上次更新2024/1/25 08:41:39
查看原帖
蒟蒻的奇妙做法80ptsWA#8#9求条
795344
lfxxx_楼主2024/1/24 21:14
#include<bits/stdc++.h>
#define int long long
using namespace std;
map<string,int>dfn;
map<int,string>name;
string s1,s2;

void ins(string s,int T)
{
	dfn[s]=T;
	name[T]=s;
}
void del(string s)
{
	name.erase(dfn[s]);
	dfn.erase(s);
}
int T=0;
void play()
{
	if(s1!="")
		ins(s1,++T);
	if(s2!="")
		ins(s2,++T);
	s1=s2="";
	s1=(*name.begin()).second;
	del(s1);
	if(name.size()>1)
	{
		s2=(*name.begin()).second;
		del(s2);
	}
	cout<<s1<<' '<<s2<<'\n';
}
signed main()
{
	ios::sync_with_stdio(false);
	cin.tie(0);
	int n; 
	cin>>n;
	while(n--)
	{
		string op;
		cin>>op;
		if(op[0]=='s')
		{
			if(s1==""&&s2==""&&!name.size())
			{
				cout<<"Error\n";
				continue;
			}
			play();
		}
		if(op[0]=='a')
		{
			string s;
			cin>>s;
			if(dfn[s]==0&&s!=s1&&s!=s2)
			{
				ins(s,++T);
				cout<<"OK\n";
			}
			else
				cout<<"Error\n";
		}
		if(op[0]=='l')
		{
			string s;
			cin>>s;
			if(dfn[s]>0)
			{
				del(s);
				cout<<"OK\n";
			}
			else
				cout<<"Error\n";
		}
	}
}

link

2024/1/24 21:14
加载中...