UVA1203 Argus
思路
用堆维护每个触发器的下一个事件,每次取出一个事件再把对应触发器的下一个事件加入堆即可
代码
#include <cstdio>
#include <algorithm>
#include <cstring>
#include <queue>
#include <iostream>
#include <string>
using namespace std;
struct QNode{
    int time,num,Period;
    bool operator < (const QNode &b) const{
        return (time==b.time)?num>b.num:time>b.time;
    }
};
priority_queue<QNode> q;
int main(){
    string s;
    while(cin>>s&&s=="Register"){
        int num,pro;
        scanf("%d %d",&num,&pro);
        q.push((QNode){pro,num,pro});
    }
    int k;
    scanf("%d",&k);
    for(int i=1;i<=k;i++){
        printf("%d\n",q.top().num);
        QNode x=q.top();
        q.pop();
        q.push((QNode){x.time+x.Period,x.num,x.Period});
    }
    return 0;
}
												
											UVA1203 Argus的更多相关文章
- poj  2051.Argus  解题报告
		
题目链接:http://poj.org/problem?id=2051 题目意思:题目有点难理解,所以结合这幅图来说吧---- 有一个叫Argus的系统,该系统支持一个 Register 命令,输入就 ...
 - Argus
		
Argus Time Limit: 1000MS Memory Limit: 30000K Total Submissions: 10186 Accepted: 4801 Description A ...
 - 【暑假】[实用数据结构]UVAlive 3135 Argus
		
UVAlive 3135 Argus Argus Time Limit: 3000MS Memory Limit: Unknown 64bit IO Format: %lld & %l ...
 - LA-3135 - Argus(优先队列)
		
3135 - Argus A data stream is a real-time, continuous, ordered sequence of items. Some examples incl ...
 - poj2051 Argus
		
Description A data stream is a real-time, continuous, ordered sequence of items. Some examples inclu ...
 - UVA 1203 - Argus(优先队列)
		
UVA 1203 - Argus 题目链接 题意:给定一些注冊命令.表示每隔时间t,运行一次编号num的指令.注冊命令结束后.给定k.输出前k个运行顺序 思路:用优先队列去搞,任务时间作为优先级.每次 ...
 - uva 1203 - Argus(优先队列)
		
option=com_onlinejudge&Itemid=8&page=show_problem&problem=3644" target="_blank ...
 - Winter-2-STL-A Argus 解题报告及测试数据
		
Time Limit:2000MS Memory Limit:65536KB Description A data stream is a real-time, continuous, ord ...
 - ACM解题之(ZOJ 2212) Argus
		
题目来源: 点击打开题目 题目翻译: 数据流是实时的,连续的,有序的项目序列.一些例子包括传感器数据,互联网流量,金融代码,在线拍卖以及诸如网络使用日志和电话记录之类的交易日志.同样,对流进行的查询在 ...
 
随机推荐
- 配置非安装版tomcat服务
			
1.设置服务名称,进入tomcat目录/bin文件夹,编辑service.bat中的 set SERVICE_NAME = (修改成你需要的服务名,这个将是你启动服务的句柄): 2.修改 set PR ...
 - 23、svn与打飞机
			
svn与git 打飞机 css *{margin:0; padding:0;} html,body{width:100%; height:100%; overflow: hidden;} .main{ ...
 - js 时分秒与秒数的转换
			
1. 时间戳 格式化为 时分秒(00:00:00) /** * 时间秒数格式化 * @param s 时间戳(单位:秒) * @returns {*} 格式化后的时分秒 */ var sec_to_t ...
 - python全栈开发   *   19   面向对象 知识点汇总   *    180701
			
19 面向对象初识2 一.类的名称空间1.对象的名称空间对象的名称空间中有类对象指针,对象可以通过"类对象指针"找类中的"静态变量"(静态字段),也可以用对象找 ...
 - 电子产品使用感受之———我用过的最昂贵的手机壳:otter box 和 Apple 原装清水壳的对比
			
2014年9月27日,我买到了我所使用的第一部 iPhone — iPhone 5C 蓝色.今天,2019年3月2日,我手里拿的是iPhoneXR 蓝色,两款手机如出一辙的设计和手感,让我充满了无限的 ...
 - 解决键盘输入被JDB占用的问题
			
解决键盘输入被JDB占用的问题 本周的任务"迭代和JDB"在使用JDB调试时需要键盘输入数据,但我在正确的位置输入数据后发现JDB提示如图所示的错误. 上网查找后得知该错误的产生是 ...
 - python文件派生
			
import time class Foo: x = 1 def __init__(self, y): self.y = y def __getattr__(self, item): # 没有的情况下 ...
 - [dev] 啥是Virtual Private Network
			
先来读wiki:https://en.wikipedia.org/wiki/Virtual_private_network 摘要: VPNs can be either remote-access ( ...
 - Python_tkinter(1)_窗口创建与布局
			
环境:Python 3.7.2 1. 窗口基本创建(窗口标题.窗口大小) import tkinter from tkinter import * # 初始化Tk() root = Tk() # 设置 ...
 - shell编程之awk命令详解
			
shell编程之awk命令详解 a:focus { outline: thin dotted #333; outline: 5px auto -webkit-focus-ring-color; out ...