fzu1894 自愿者选拔
来源:互联网 发布:pkpm网络计划软件 编辑:程序博客网 时间:2024/05/21 06:47
题意:
中文题目就不多说了。
思路:
单调队列的使用,因为问的是当前排队中的最高rp,所以用个维护最大值的单调队列就好了,出队和询问的时候判断下就好了。
const int maxn = 1e6 + 10;struct node { char *name; int rp; int pos; node() {} node(char c[], int rp,int pos) { this->name = c; this->rp = rp; this->pos = pos; } }p[maxn];int main(int argc, const char * argv[]){ // freopen("in.txt","r",stdin); // freopen("out.txt","w",stdout); int t; cin >> t; char name[10]; int rp; while(t--) { char op[10]; int head = 0, tail = 0; int out = 0; int pos = 0; while(scanf("%s", op) != EOF) { if (strcmp(op, "START") == 0) continue; if (op[0] == 'C') { scanf("%s %d", name, &rp); while(head < tail && p[tail-1].rp < rp) tail--; p[tail++] = node(name, rp, ++pos); }else if (op[0] == 'G') { out++; if (p[head].pos == out) head++; }else if (op[0] == 'Q'){ if (head == tail) printf("-1\n"); else printf("%d\n", p[head].rp); }else if (op[0] == 'E') break; } } return 0;}
0 0
- fzu1894 自愿者选拔
- HDU2188选拔自愿者
- FZU1894 志愿者选拔
- FZU1894 志愿者选拔
- FZU1894-志愿者选拔
- FZU1894 志愿者选拔 --单调队列
- fzu1894 志愿者选拔 单调队列
- 单调队列 fzu1894 志愿者选拔
- 单调队列--fzu1894 志愿者选拔
- FZU1894 志愿者选拔(队列) ~TLE
- FZU1894
- 志愿者选拔
- 选拔总结
- 选拔忧虑
- 选拔wp
- SOS关于组建星际物质研究自愿者协会的倡议
- 选拔后随感
- 选拔人才的五项原则
- ZeroMQ的ZMQ_STREAM模式写的服务器反向先发请求的示例代码
- iOS XMPP框架学习
- C语言程序设计飞机游戏的体会
- java的concurrent
- 软件开发过程-代码静态审查
- fzu1894 自愿者选拔
- C#实现百度地图附近搜索&调用JavaScript函数
- HDU 1408 盐水的故事(模拟题目)
- LeetCode 10. Regular Expression Matching
- jquery2
- Xcode 再次开启欢迎界面的办法
- Material Design之CollapsingToolbarLayout 相关属性和方法介绍
- 第12周第二项目——Time类的运算(运算符重载)
- 解决SAP 从nonicode 升级到unicode 环境中 出现 RFC 中文用户名 问题