工作安排(反悔贪心板子题)
工作安排 - 题目 - Daimayuan Online Judge
分析:
贪心,将set当链表用
从后往前考虑(这样先入队的就一直能到最后),碰到更小的时刻,就将之前入队的 能出的全出
#include <bits/stdc++.h>
#define int long long
#define Pa pair<int,int>
using namespace std;const int N=1e5+5;
struct node
{int d,p;bool operator < (node b) const { return d<b.d || d==b.d && p<b.p; }
}a[N];
set <int> st;
void solve()
{int n;cin>>n;for(int i=1;i<=n;i++) {scanf("%lld%lld",&a[i].d,&a[i].p);st.insert(a[i].d);}sort(a+1,a+1+n);auto it=prev(st.end());int l,r=*it;if(it==st.begin()) l=0;else it=prev(it), l=*it;int ans=0;priority_queue <int,vector<int>,less<int> > q;for(int i=n;i>=0;i--){if(a[i].d==l) {while(r>l && !q.empty()) {r--;ans+=q.top(); q.pop();}if(it!=st.begin()) it=prev(it), r=l, l=*it;else l=0;}q.push(a[i].p); }cout<<ans<<"\n";
}
signed main()
{int T=1;//cin>>T;while(T--) solve();
}
solution 2:
贪心+考虑容斥(反悔贪心板子题,我是zz)
考虑何时才要出队
#include <bits/stdc++.h>
#define int long long
#define Pa pair<int,int>
using namespace std;const int N=1e5+5;
struct node
{int d,p;bool operator < (node b) const { return d<b.d || d==b.d && p<b.p; }
}a[N];
void solve()
{int n;cin>>n;int ans=0;for(int i=1;i<=n;i++) {scanf("%lld%lld",&a[i].d,&a[i].p);ans+=a[i].p;}sort(a+1,a+1+n);int cnt=0;priority_queue <int,vector<int>,greater<int> > q;for(int i=1;i<=n;i++){q.push(a[i].p);cnt++;if(cnt>a[i].d) {// cnt 大于当前的时刻,说明不足以完成(包括)当前的时刻之前的所有工作,要剔除最小的ans-=q.top(); q.pop();cnt--;}}cout<<ans<<"\n";
}
signed main()
{int T=1;//cin>>T;while(T--) solve();
}
工作安排(反悔贪心板子题)相关推荐
- 【bzoj1572】[Usaco2009 Open]工作安排Job 贪心+堆
题目描述 Farmer John 有太多的工作要做啊!!!!!!!!为了让农场高效运转,他必须靠他的工作赚钱,每项工作花一个单位时间. 他的工作日从0时刻开始,有1000000000个单位时间(!). ...
- [TJOI2013]拯救小矮人(反悔贪心证明),「ICPC World Finals 2019」Hobson 的火车(基环树,差分)
2021-09-07 test [TJOI2013]拯救小矮人 「ICPC World Finals 2019」Hobson 的火车 [TJOI2013]拯救小矮人 luogu4823 考试题目的数据 ...
- 美团点评2020校招算法工程师编程题--工作安排--动态规划
题目描述: 小美是团队的负责人,需要为团队制定工作的计划,以帮助团队产出最大的价值. 每周团队都会有两项候选的任务,其中一项为简单任务,一项为复杂任务,两项任务都能在一周内完成.第i周,团队完成简单任 ...
- 51Nod 1091 线段的重叠(贪心+区间相关,板子题)
1091 线段的重叠 基准时间限制:1 秒 空间限制:131072 KB 分值: 5 难度:1级算法题 X轴上有N条线段,每条线段包括1个起点和终点.线段的重叠是这样来算的,[10 2 ...
- 反悔贪心题-炼金模拟器
题意 LYH拥有一堆药水,每瓶药水i有一种功效a[i];如果a[i]为正,则加血:如果为负,则扣血. 他决定从第一瓶开始,依次绝对每瓶喝还是不喝:最开始血量为0,他希望喝的药水尽量多,并且不会中途挂掉 ...
- [BZOJ1572][Usaco2009 Open]工作安排Job
1572: [Usaco2009 Open]工作安排Job Time Limit: 10 Sec Memory Limit: 64 MB Submit: 1351 Solved: 632 [Sub ...
- 算法_贪心 刷题总结
目录 贪心真的太玄学了 1.入门级 2.区间覆盖升级版(多重区间覆盖) 3.CF1066B Heaters 4.拿东西(贪心+博弈) P1209 [USACO1.3]修理牛棚 Barn Repair( ...
- 【BZOJ2245】[SDOI2011]工作安排 拆边费用流
[BZOJ2245][SDOI2011]工作安排 Description 你的公司接到了一批订单.订单要求你的公司提供n类产品,产品被编号为1~n,其中第i类产品共需要Ci件.公司共有m名员工,员工被 ...
- bzoj1572 [Usaco2009 Open]工作安排Job
[Usaco2009 Open]工作安排Job Time Limit: 10 Sec Memory Limit: 64 MB Description Farmer John 有太多的工作要做啊!!!! ...
最新文章
- 重构实践:体验interface的威力(一)
- 设计模式之结构型(4)-桥接模式(Bridge)
- 反思~我们是否应当克制对新技术的追求?
- 小米8 android9手势,这么全面的小米手机操作手势你一定没见过
- 编写html要注意,编写XHTML需要注意的问题以及和HTML的区别
- 魅族android 版本 6.0下载,flyme6.0内测版
- oracle 查找 psu,Oracle如何检查当前数据库CPU和PSU补丁信息
- LAMP架构调优(二)——修改Apache运行用户
- linux下的screen工具配置(针对 string escape)
- javahost:使用虚拟DNS省掉开发环境配置hosts文件
- 探测内网c段、外网某网站(ip)的网络服务存活状态
- 68张微信表情包png
- rovio环境配置与测试笔记
- 「AR裸眼插画」零基础入门级教程来啦
- Linux apache 默认目录结构
- 在word 页眉插入章编号+标题
- 3ds max不能完全自定义设置FOVX和FOVY(3ds max 2014)
- 数据库种类发展史和大数据下的数据库(NoSQL)
- 51单片机:设计电子密码锁
- PostgreSQL利用全备与WAL日志恢复数据库
热门文章
- cacti监控及配置
- 学习Redis的基本命令
- ALS算法原理和在音乐推荐上的应用
- php+5.3.7++,Windows Server 2008(R2) 一键安装PHP环境(PHP5.3+FastCGI模式
- java 优化包_java美化界面包 | 学步园
- 抖音小店为什么没生意?万顿思教育
- RGBD相机的标定和图像配准
- iOS - 个人中心果冻弹性下拉动画
- 前一阵子闹得沸沸扬扬的IP归属地,到底是怎么实现的?
- GIS的基本概念二:大地水准面、旋转椭球体(椭球体)、大地基准面