zoukankan      html  css  js  c++  java
  • FZU 1894 志愿者选拔

    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

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

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

    #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
    ",q[front]);
    							else printf("-1
    ");
    					}
    					
    					
    				}
    				
    			}
    			
    		return 0;	
    	}
    
  • 相关阅读:
    python之re模块
    python之shell
    python之zip打包
    shell 处理解析json
    shell 中的传参-字符串传参,dict传参
    xshell 快速复制粘贴设置
    openstack 块存储服务 cinder
    win10系统中安装java环境
    mac上安装pip
    解决 谷歌浏览器报欧呦 崩溃了
  • 原文地址:https://www.cnblogs.com/lunatic-talent/p/12798927.html
Copyright © 2011-2022 走看看