172C
模拟
#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的更多相关文章
- Git self-learning
---恢复内容开始--- 使用后的总结 git config --global user.name "" #设置和查看用户名git config --global user.ema ...
- xman_2019_format(非栈上格式化字符串仅一次利用的爆破)
xman_2019_format(非栈上格式化字符串仅一次利用的爆破) 首先检查一下程序的保护机制 然后用IDA分析一下 存在后门 首先malloc了一片堆空间,读入数据 把刚刚读入的数据当作格式化字 ...
随机推荐
- 什么是UV?
转自http://www.cnblogs.com/jenry/p/4083415.html 1.什么是UV? 对于三维模型,有两个最重要的坐标系统,一是顶点的位置(X,Y,Z)坐标,另一个就是UV ...
- reflect2015破解
具体看 http://download.congci.com/download/net-reflector-7-6-1-824-wanquan-pojie#downloads *博主注:因为很多破解程 ...
- luogu[1135]奇怪的电梯
题目描述 呵呵,有一天我做了一个梦,梦见了一种很奇怪的电梯.大楼的每一层楼都可以停电梯,而且第i层楼(1<=i<=N)上有一个数字Ki(0<=Ki<=N).电梯只有四个按钮:开 ...
- HTML 学习笔记 CSS(选择器)
CSS元素选择器 最常见的CSS 选择器就是元素选择器 换句话说 文档的元素就是最基本的选择器 如果设置HTML样式 选择器通常就是某个HTML元素 比如p h1 em a 甚至可以是HTML本身 h ...
- P3398 仓鼠找sugar
P3398 仓鼠找sugar 题目描述 小仓鼠的和他的基(mei)友(zi)sugar住在地下洞穴中,每个节点的编号为1~n.地下洞穴是一个树形结构.这一天小仓鼠打算从从他的卧室(a)到餐厅(b),而 ...
- 【MySql】存储过程添加事务
存储过程使用SQLException捕获SQL错误,然后处理: 我们可以在MySQL存储过程中捕获SQL错误,然后通过事务判断,回滚(ROLLBACK)还是提交(COMMIT). CREATE PRO ...
- QT 数据库编程三
//mainwindow.cpp #include "mainwindow.h" #include "logindlg.h" #include "sc ...
- 设置 java -jar 的进程显示名称
有时候我们会用 nohup java -jar xxx.jar来将一些可执行的java application挂在后台,类似windows服务一样来运行.但是有一个不爽的地方,在linux终端里用jp ...
- Qt学习笔记 QMessageBox
Qt的几种MessageBox 1.Infomation类型 QMessageBox::information(this,tr("hello"),tr("title&qu ...
- Java程序-进程中的"进程"
进程 我们知道程序在磁盘上的时候是静态的,当他被加载到内存的时候,就变成了一个动态的,称为进程,如下图是程序被加载到内存后,在内存中的分布情况如下 此图来自http://blog.csdn. ...