前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >FZU 1894 志愿者选拔

FZU 1894 志愿者选拔

作者头像
风骨散人Chiam
发布2020-10-28 10:35:28
2690
发布2020-10-28 10:35:28
举报
文章被收录于专栏:CSDN旧文

Problem 1894 志愿者选拔

Accept: 2308 Submit: 7003 Time Limit: 1500 mSec Memory Limit : 32768 KB

Problem Description

世博会马上就要开幕了,福州大学组织了一次志愿者选拔活动。 参加志愿者选拔的同学们排队接受面试官们的面试。参加面试的同学们按照先来先面试并且先结束的原则接受面试官们的考查。 面试中每个人的人品是主要考查对象之一。(提高人品的方法有扶老奶奶过街,不闯红灯等) 作为主面试官的John想知道当前正在接受面试的同学队伍中人品值最高的是多少。于是他请你帮忙编写一个程序来计算。

Input

输入数据第一行为一整数T,表示有T组输入数据。 每组数据第一行为”START”,表示面试开始 接下来的数据中有三种情况: 输入 含义 1 C NAME RP_VALUE 名字为NAME的人品值为RP_VALUE的同学加入面试队伍。(名字长度不大于5,0 <= RP_VALUE <= 1,000,000,000) 2 G 排在面试队伍最前面的同学面试结束离开考场。 3 Q 主面试官John想知道当前正在接受面试的队伍中人品最高的值是多少。 最后一行为”END”,表示所有的面试结束,面试的同学们可以依次离开了。 所有参加面试的同学总人数不超过1,000,000

Output

对于每个询问Q,输出当前正在接受面试的队伍中人品最高的值,如果当前没有人正在接受面试则输出-1。

Sample Input

2 START C Tiny 1000000000 C Lina 0 Q G Q END START Q C ccQ 200 C cxw 100 Q G Q C wzc 500 Q END Sample Output 1000000000 0 -1 200 100 500

Hint

数据较大建议使用scanf,printf 不推荐使用STL

Source

福州大学第七届程序设计竞赛

单调队列问题,虽然不难,现在我还有点懵。

代码语言:javascript
复制
#include <iostream>
#include <cstdio>
#include<cstring>
using namespace std;
int x;
char a[10];
int ms[1000001],q[1000001];
int main(){
	int t;
	cin>>t;
	while(t--){
		int front=0,tail=-1;
		int front2=0,tail2=-1;
		scanf("%s",a);
		if(a[0]=='S') 
			while(1){
				scanf("%s",a);
				if(a[0]=='E') break;
				switch(a[0]){
					case 'C':scanf("%s",a);scanf("%d",&x);
						tail2++;
						ms[tail2]=x;
						while(tail>=front&&x>q[tail]) tail--;
						tail++;
						q[tail]=x;
						break;
					case 'G':if(front2<=tail2){
								if(ms[front2]==q[front])
									front++;
								front2++;
						}
						break;
					case 'Q':if(front2<=tail2) printf("%d\n",q[front]);
							else printf("-1\n");
					}
					
					
				}
				
			}
			
		return 0;	
	}
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2019/05/18 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • Problem 1894 志愿者选拔
  • Problem Description
  • Input
  • Output
  • Sample Input
  • Hint
  • Source
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档