(算法入门经典大赛 优先级队列)LA 3135(之前K说明)[通俗易懂]

(算法入门经典大赛 优先级队列)LA 3135(之前K说明)

大家好,又见面了,我是全栈君,今天给大家准备了Idea注册码。

A data stream is a real-time, continuous, ordered sequence of items. Some examples include sensor data, Internet traffic, financial tickers, on-line auctions, and transaction logs such as Web usage logs and telephone call records. Likewise, queries over streams run continuously over a period of time and incrementally return new results as new data arrives. For example, a temperature detection system of a factory warehouse may run queries like the following.

Query-1: �Every five minutes, retrieve the maximum temperature over the past five minutes.� Query-2: �Return the average temperature measured on each floor over the past 10 minutes.�

We have developed a Data Stream Management System called Argus, which processes the queries over the data streams. Users can register queries to the Argus. Argus will keep the queries running over the changing data and return the results to the corresponding user with the desired frequency.

For the Argus, we use the following instruction to register a query:

Register Q_num Period

Q_num (0 < Q_num ≤ 3000) is query ID-number, and Period (0 < Period ≤ 3000) is the interval between two consecutive returns of the result. After Period seconds of register, the result will be returned for the first time, and after that, the result will be returned every Period seconds.

Here we have several different queries registered in Argus at once. It is confirmed that all the queries have different Q_num. Your task is to tell the first K queries to return the results. If two or more queries are to return the results at the same time, they will return the results one by one in the ascending order of Q_num.

Input 

The first part of the input are the register instructions to Argus, one instruction per line. You can assume the number of the instructions will not exceed 1000, and all these instructions are executed at the same time. This part is ended with a line of �#�.

The second part is your task. This part contains only one line, which is one positive integer K (≤ 10000).

Output 

You should output the Q_num of the first K queries to return the results, one number per line.

Sample Input

Register 2004 200Register 2005 300#5

Sample output
20042005200420042005

代码例如以下:

/* * LA_3135.cpp * *  Created on: 2014年8月1日 *      Author: pc */#include <iostream>#include <cstdio>#include <queue>using namespace std;struct Item{	int num;//指令的序号	int period;//指令的运行周期	int time;//指令的下一次运行时间	bool operator<(const Item& b)const{		if(time != b.time){			return time > b.time;		}		return num > b.num;	}};int main(){	char s[20];	priority_queue<Item> pq;	while(scanf("%s",&s),s[0] != '#'){		Item item;		scanf("%d%d",&item.num,&item.period);		item.time = item.period;		pq.push(item);	}	int k;	scanf("%d",&k);	while(k--){//核心逻辑		Item r = pq.top();//不断的取出来然后不断的插走		pq.pop();		printf("%d\n",r.num);		r.time += r.period;		pq.push(r);	}	return 0;}

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/116749.html原文链接:https://javaforall.net

(0)
上一篇 2022年1月16日 下午12:00
下一篇 2022年1月16日 下午3:00


相关推荐

  • ssm框架过时了吗_spring实战

    ssm框架过时了吗_spring实战SpringSpring是一个开源的免费的框架Spring是一个轻量级的,非入侵式的框架控制反转(IOC),面向切面编程(AOP)支持事务的处理,对框架整合的支持IOC理论UserDaoUserDaoImpUserSeviceUserServiceImp在之前,用户的需求可能会影响原来的代码。使用一个set。public void setUserDao(UserDao userDao){ this.userDao = userDao;}之前是主动创建对象,控制

    2022年8月8日
    5
  • Python和Pycharm、Vscode使用技巧

    Python和Pycharm、Vscode使用技巧文章目录前言 PycharmDebug 函数 debugconsole 基于支持正则的文本编辑器批量修改把文本中的偶数和奇数分离参考资料前言前两天在调试一个巨大的程序 跑起来都要几个小时 经过把训练集替换成测试集之后才快了一些 但是仍然有中途崩溃的问题 期间想了各种办法 并总结了这篇文章 本文主要记录一些调试技巧 PycharmDebug 函数 my hook target function name fun to hook hook function tmp storage

    2026年3月17日
    2
  • 陈述python中运算符的优先级_numpy逻辑运算符

    陈述python中运算符的优先级_numpy逻辑运算符python逻辑运算符1.成员andornot优先级:()>not>and>or2.and逻辑运算符and,aandb,如果a和b都为True,则返回True,如果其中一个为False,返回False,简言之:一假则假,全真则真3.or逻辑运算符or,aorb,如果a和b有一个为True,则返回True,如果全为False,返回False,简言之:一真则真…

    2025年8月10日
    4
  • ICP备案接入商

    ICP备案接入商1 什么是 ICP 备案中的接入商 ICP 备案系统中所说的接入商 是指为您提供虚拟主机 服务器托管或者专线接入的公司 现在 ICP 备案的原则是 谁接入谁负责 接入商一般都有自己的电子平台和工信部对接 所以通过接入商申报备案能更快的通过 你可以自行申报备案 但是一般不会有结果 如果你实在不想或者找不到接入商申报 建议你联系接入的运营商 到营业厅申报备案 运营

    2026年3月18日
    2
  • Stack overflow at line  错误原因

    Stack overflow at line  错误原因场景:点击页面上一个超链接,弹出模态窗口。

    2022年7月15日
    27
  • Centos7升级openssh到最高版本

    Centos7升级openssh到最高版本注 由于 Centos7 自带的 openssh 版本过低且存在漏洞 所以为了安全考虑我们需要升级 openssh 到最高版本 1 先通过 yum 更新 会将 openssh 自动更新到最高版本 yum yupdateopens 如果报错 var run yum pid 已被锁定则执行命令删除 rm rf var run yum pid 注 由于 yum 中的 openssh 未必已经同步了

    2026年3月19日
    2

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号