BZOJ 1216 优先队列
这道题比较明显的是一道优先队列+模拟的题,优先队列就用STL里的然后自定义一个类型就好,主要是模拟的过程,只有我们处理到下一个进程的到达时间晚于我们当前处理进程执行完的时间,我们才能够确定这个进程能被执行完。对于执行了部分时间的进程,我们维护它的剩余时间并不断更新优先队列的值,然后模拟一下就出来了。
#include<cstdio>
#include<cstring>
#include<algorithm>
#include<queue>
using namespace std;
struct Vergil
{int num,kth,arr,tex; bool operator < (const Vergil &a) const{return (kth<a.kth||(kth==a.kth&&arr>a.arr)); }
};
priority_queue<Vergil> q;
int t,a,b,c,d;void add(int a,int b,int c,int d)
{Vergil x;x.num=a;x.arr=b;x.tex=c;x.kth=d;q.push(x);
}int main()
{scanf("%d%d%d%d",&a,&b,&c,&d);add(a,b,c,d);t=b;while (scanf("%d%d%d%d",&a,&b,&c,&d)==4) { Vergil x=q.top();q.pop();int v=x.tex;bool flag=0;while (t+v<=b) { printf("%d %d\n",x.num,t+v);t+=v;if (q.empty()) {t=b;flag=1;break;}x=q.top();q.pop();v=x.tex;}add(a,b,c,d);if (flag) continue;x.tex-=(b-t);q.push(x);t+=(b-t);}while (!q.empty()) {Vergil x=q.top();q.pop();int v=x.tex;printf("%d %d\n",x.num,t+v);t+=v; }return 0;
}
BZOJ 1216 优先队列相关推荐
- BZOJ 2288: 【POJ Challenge】生日礼物 优先队列+贪心+链表
这题看别人题解的 这题说可以转换成数据备份. 这题可以把一段同号的数并成一个数,那么就变成了一个正负交替的序列,然后把头尾的负数去掉. 然后就是把所有的正值都加起来,并统计正数的段数cnt,如cnt& ...
- bzoj 1233 干草堆tower 优先队列优化dp
https://www.lydsy.com/JudgeOnline/problem.php?id=1233 描述: 奶牛们讨厌黑暗. 为了调整牛棚顶的电灯的亮度,Bessie必须建一座干草堆使得她能够 ...
- [数位dp][优先队列] Bzoj 3131 淘金
Description 小Z在玩一个叫做<淘金者>的游戏.游戏的世界是一个二维坐标.X轴.Y轴坐标范围均为1..N.初始的时候,所有的整数坐标点上均有一块金子,共N*N块. 一阵风 ...
- bzoj 2151: 种树 贪心+优先队列
题意 有围成一圈的n个位置,每一个位置有一个权值,现要求选出m个位置,使得这m个位置互不相邻且权值和最大. n<=200000 分析 如果没有m这个限制的话我可能就会跑去写网络流了-- 我们考虑 ...
- [BZOJ]1071: [SCOI2007]组队 STL优先队列
Description NBA每年都有球员选秀环节.通常用速度和身高两项数据来衡量一个篮球运动员的基本素质.假如一支球队里 速度最慢的球员速度为minV,身高最矮的球员高度为minH,那么这支球队的所 ...
- 【HNOI2003】【BZOJ1216】操作系统(模拟,优先队列)
problem 模拟操作系统的进程调度 给定每一个进程的进程号,到达时间,执行时间和运行优先级.(已经按到达时间从小到大排序) 如果一个进程到达的时候CPU是空闲的,则它会一直占用CPU直到该进程结束 ...
- BZOJ 1233 干草堆 (单调队列优化DP)
\(BZOJ~1233~~\)干草堆: (题目特殊性质) \(solution:\) 很妙的一道题目,开始看了一眼觉得是个傻逼贪心,从后往前当前层能多短就多短,尽量节省花费.但是这是DP专题,怎么会有 ...
- BZOJ刷题记录---提高组难度
BZOJ刷题记录---提高组难度 总目录详见https://blog.csdn.net/mrcrack/article/details/90228694 序号 题号 算法 思想难度 实现难度 总难度 ...
- 【BZOJ3131】淘金(SDOI2013)-数位DP+优先队列
测试地址:淘金 做法: 本题需要用到数位DP+优先队列. 令 F ( x , y ) F(x,y) F(x,y)为坐标 ( x , y ) (x,y) (x,y)上的黄金数目,那么: F ( x , ...
最新文章
- FuzzyCMeans算法
- sql如何让计算出来的结果百分数显示_图解面试题:如何交换数据?
- Spring AOP无法拦截内部方法调用-- expose-proxy=true用法
- 使用OpenCV实现道路车辆计数
- C程序中变量存放方式介绍
- ajax function不执行,ajax的success: function (data)不执行怎么回事?
- java 反查域名_C段查询雏形之在Java中反查一个IP上的所有域名(旁站查询)
- 制作404页面的重要性
- 会话(session)
- Linux 相关小技巧
- Excel导入导出组件的设计
- VUE图片裁剪功能vue-img-cutter
- 轻松搞定C语言中复杂的声明
- 3、低功耗蓝牙(BLE)配对和解绑
- 中国移动、联动、电信
- 九招使用 Telegram必学,使用Telegram 必看实用功能
- 使用代理后,雷鸟连接qq邮箱
- uniapp+uniCloud实现批量上传图片到云端(解决h5端跨域问题)
- Activiti 学习笔记八:排他网关(ExclusiveGateWay)
- 嵌入式系统硬件体系设计(一)