模拟

#include<iostream>
#include<algorithm>
#include<vector>
#include<cstdio>
#include<Set>
using namespace std;
struct pas
{
int x,t,num,time;
}p[];
set<int>s;
vector<int>stu[];
int n,m,time;
int pt[];
inline int min(int x,int y)
{
return x<y?x:y;
}
inline int max(int x,int y)
{
return x>y?x:y;
}
inline bool cp(pas x,pas y)
{
return x.t<y.t;
}
inline bool cp1(pas x,pas y)
{
return x.num<y.num;
}
int main()
{
cin>>n>>m;
for(int i=;i<=n;i++)
{
scanf("%d%d",&p[i].t,&p[i].x);
p[i].num=i;
}
sort(p+,p+n+,cp);
int pre=;
while(pre<=n)
{
s.clear();
int dis=;
for(int i=pre;i<min(pre+m,n+);i++)
{
s.insert(p[i].x);
stu[p[i].x].push_back(i);
}
if(time<p[min(pre+m-,n)].t)
time+=(p[min(pre+m-,n)].t-time);
int last=;
for(set<int>::iterator it=s.begin();it!=s.end();it++)
{
time+=(*it-last);
for(int i=;i<stu[*it].size();i++)
p[stu[*it][i]].time=time;
time+=(+(stu[*it].size()/));
stu[*it].clear();
last=*it;
}
time+=*s.rbegin();
pre=min(pre+m,n+);
}
sort(p+,p+n+,cp1);
for(int i=;i<=n;i++)
printf("%d ",p[i].time);
return ;
}

172C的更多相关文章

  1. Git self-learning

    ---恢复内容开始--- 使用后的总结 git config --global user.name "" #设置和查看用户名git config --global user.ema ...

  2. xman_2019_format(非栈上格式化字符串仅一次利用的爆破)

    xman_2019_format(非栈上格式化字符串仅一次利用的爆破) 首先检查一下程序的保护机制 然后用IDA分析一下 存在后门 首先malloc了一片堆空间,读入数据 把刚刚读入的数据当作格式化字 ...

随机推荐

  1. extra增强延迟加载

    这种配置和配置为lazy=true是一样的,但它的好处在于调用size/contains等方法时,并不查询整个集合的数据,而是发送一条sql语句来处理,只有真正在使用时才全部去查询整个集合

  2. MarkdownPad Win10 无法预览

    软件环境 系统:windows 10 x64 软件:MarkDownPad 2 遇到问题 Markdownpad的实时预览无法显示 解决办法 安装 Awesonmium sdk后,重新打开Markdo ...

  3. Android驱动入门-LED--HAL硬件访问服务层②

    硬件平台: FriendlyARM Tiny4412 Cortex-A9 操作系统: UBUNTU 14.04 LTS 时间:2016-09-21  16:58:56 为了避免访问冲突,则创建了硬件访 ...

  4. 多线程进行http请求

    昨天需要一个线下脚本进行单播推送,大约有1kw个用户,考虑到推送速度就临时搞了个请求线上的一个脚本 /** * 临时支持invoke单播推送 */ #include <stdio.h> # ...

  5. Jersey the RESTful Web Services in Java

    Jersey 是一个JAX-RS的实现, JAX-RS即Java API for RESTful Web Services, 支持按照表述性状态转移(REST)架构风格创建Web服务. REST 中最 ...

  6. SQL使用开窗函数与CTE查询每月销售额的前几名

    WITH tagTab AS( SELECT YearMonth, pm=RANK() OVER(PARTITION BY YearMonth ORDER BY amount DESC) FROM S ...

  7. img加载在IE11,chrome,FF下的不同

    IE11 img.complete 得不到img的大小,会使用img.onload chrome,ff:img.complete 得不到img的大小,会使用自己创建的img加载方法

  8. swift调用oc语言文件,第三方库文件或者自己创建的oc文件——简书作者

    Swift是怎样调用OC的第三方库的呢?请看下面详情: 情况一: 1.首先打开Xcode,iOS->Application->Single View Application, 选Next. ...

  9. MFC 调试方法

    AfxDebugBreak     MFC 提供特殊的 AfxDebugBreak 函数,以供在源代码中对断点进行硬编码:     AfxDebugBreak( ); 在 Intel 平台上,AfxD ...

  10. CentOs下jdk的安装

    jdk的安装是咱搞java的基本功了,在window上配置了没上百次也有几十次了,今天换个环境,需要在linux系统上安装,而服务器版本的CentOs是纯命令行的, 因此也给配置jdk增加了不少难度, ...