523D - Statistics of Recompressing Videos【模拟,greedy】
来源:互联网 发布:淘宝恶意买家 编辑:程序博客网 时间:2024/06/05 17:40
A social network for dogs called DH (DogHouse) has k special servers to recompress uploaded videos of cute cats. After each video is uploaded, it should be recompressed on one (any) of the servers, and only after that it can be saved in the social network.
We know that each server takes one second to recompress a one minute fragment. Thus, any server takesm seconds to recompress am minute video.
We know the time when each of the n videos were uploaded to the network (in seconds starting from the moment all servers started working). All videos appear at different moments of time and they are recompressed in the order they appear. If some video appeared at time s, then its recompressing can start at that very moment, immediately. Some videos can await recompressing when all the servers are busy. In this case, as soon as a server is available, it immediately starts recompressing another video. The videos that await recompressing go in a queue. If by the moment the videos started being recompressed some servers are available, then any of them starts recompressing the video.
For each video find the moment it stops being recompressed.
The first line of the input contains integers n andk (1 ≤ n, k ≤ 5·105) — the number of videos and servers, respectively.
Next n lines contain the descriptions of the videos as pairs of integerssi, mi (1 ≤ si, mi ≤ 109), where si is the time in seconds when thei-th video appeared andmi is its duration in minutes. It is guaranteed that all thesi's are distinct and the videos are given in the chronological order of upload, that is in the order of increasingsi.
Print n numbers e1, e2, ..., en, whereei is the time in seconds after the servers start working, when thei-th video will be recompressed.
3 21 52 53 5
6711
6 11 10000000002 10000000003 10000000004 10000000005 10000000006 3
100000000120000000013000000001400000000150000000015000000004
<pre name="code" class="cpp">#include<iostream>#include<cstdio>#include<cstring>#include<ctime>#include<algorithm>#include <map>#include <queue>using namespace std;//523D greedy 模拟queue<long long int> q;int main(){ long long int n,k,x,y; scanf("%lld%lld",&n,&k); for(int i=0; i<k; i++)q.push(0); while(n--) { scanf("%lld%lld",&x,&y); x=max(x,-q.front())+y; printf("%lld\n",x); q.pop(); q.push(-x); }}
- 523D - Statistics of Recompressing Videos【模拟,greedy】
- Codeforces 523C&D C.Name Quest【贪心】、D.Statistics of Recompressing Videos【模拟】
- Codeforces 523D Statistics of Recompressing Videos 排序+优先队列
- cf#VK Cup 2015 - Qualification Round 2-D - Statistics of Recompressing Videos-优先队列模拟
- VK Cup 2015 - Qualification Round 2 D - Statistics of Recompressing Videos
- Put videos of your p
- Script of batch converting videos.
- 1000 of greedy strategy*
- 1001 of greedy strategy
- 1002 of greedy strategy
- 1003 of greedy strategy
- 1004 of greedy strategy
- 1005 of greedy strategy
- 1007 of greedy strategy*
- 1010 of greedy strategy
- 1011 of greedy strategy
- 1012 of greedy strategy
- 1013 of greedy strategy
- 读《香港利丰集团》有感
- java date日期操作
- 格式化输出——覆写内存
- Shell (1)
- WebDav的配置
- 523D - Statistics of Recompressing Videos【模拟,greedy】
- 第一章 第六题 潘璠
- HDU 2817 A sequence of numbers 等比OR等差
- 《Redis设计与实现》学习笔记-基础数据结构
- strut2.xml中默认配置项全集
- eclipse快捷键
- ios开发-OC内存管理的学习
- 循环体中用“+”拼接字符串-代码典型缺陷分析(二)
- C++ 虚析构函数