4个点超时了,求大佬改进
  • 板块P9518 queue
  • 楼主2023xiaopeng
  • 当前回复4
  • 已保存回复4
  • 发布时间2023/8/12 19:34
  • 上次更新2023/11/3 04:13:36
查看原帖
4个点超时了,求大佬改进
1062830
2023xiaopeng楼主2023/8/12 19:34
#include <bits/stdc++.h>
using namespace std;
int main() 
{
    int n;
	scanf("%d",&n);
	vector<string> queue;//排队的队伍
	vector<string> queue_w;//游戏队伍
    for (int i=0;i<=n;i++) 
	{
        string event;
        getline(cin, event);
        if(event=="start") 
		{
			if(!queue_w.empty())//有人在玩游戏,就把他们赶回到队伍末尾
            {
           		if(queue_w.size()==1)
                {
                	queue.push_back(queue_w[0]);
                	queue_w.clear();
				}
				if(queue_w.size()==2)
                {
                	queue.push_back(queue_w[0]);
                	queue.push_back(queue_w[1]);
                	queue_w.clear();
				}
			}
            if(queue.size()>=2)//两人以上排队
			{
				cout<<queue[0]<<' '<<queue[1]<<"\n";
				queue_w.push_back(queue[0]);//进入游戏队伍
				queue_w.push_back(queue[1]);
                queue.erase(queue.begin());
                queue.erase(queue.begin());
            } 
			else if(!queue.empty()) //一人排队
			{
                cout<<queue[0]<<"\n";
				queue_w.push_back(queue[0]);
                queue.erase(queue.begin());
            } 
			else cout<<"Error"<<"\n";
        } 
		else if(event.substr(0, 6)=="arrive") 
		{
            string name=event.substr(7);
            if(find(queue.begin(),queue.end(),name)==queue.end()&&find(queue_w.begin(),queue_w.end(),name)==queue_w.end()) //找不到人
			{
                queue.push_back(name);
                cout<<"OK"<<"\n";
            } 
			else cout<<"Error"<<"\n";
        } 
		else if(event.substr(0, 5)=="leave") 
		{
            string name=event.substr(6);
            if(find(queue.begin(),queue.end(),name)!=queue.end()&&find(queue_w.begin(),queue_w.end(),name)==queue_w.end()) //排队队伍找到了人
			{
                queue.erase(find(queue.begin(), queue.end(), name));
                cout<<"OK"<<"\n";
            } 
			else cout<<"Error"<<"\n";
        }
    }
    return 0;
}

2023/8/12 19:34
加载中...