[JSOI2007]建筑抢修 (贪心)
题目链接
Solution
可以考虑 \(dp\) ,但是很显然 \((n^2)\) 降不下来.
然后考虑贪心,首先,绝对的正确的是,在同等的情况下,给后面的留更多的时间.
首先按照 \(T_2\) 排序.
然后我们维护一个大根堆 每修理一栋建筑 我们就把这栋建筑的T1值加入堆 若当前无法修理 我们判断堆顶是否比这栋建筑的T1大 如果大 取消修理堆顶,改为修理当前建筑.
Code
#include<bits/stdc++.h>
using namespace std;
const int N = 2e5+10,inf = 2e9, mod = 1e9+7;
typedef long long ll;
int n;
pair<int ,int > P[N];
int main()
{scanf("%d",&n);for(int i=1;i<=n;i++)scanf("%d%d",&P[i].second,&P[i].first);int ans = 0;ll tmp = 0;sort(P+1,P+n+1);priority_queue<int > q;for(int i=1;i<=n;i++){if(P[i].first>=P[i].second+tmp) q.push(P[i].second),ans++,tmp+=P[i].second;else{if(q.empty()) continue;int k = q.top();if(k>P[i].second){tmp-=k;tmp+=P[i].second;q.pop();q.push(P[i].second);}}}printf("%d\n",ans);return 0;
}
转载于:https://www.cnblogs.com/Kv-Stalin/p/9762517.html
[JSOI2007]建筑抢修 (贪心)相关推荐
- BZOJ.1029.[JSOI2007]建筑抢修(贪心)
题目链接 直接排序显然怎么都不行. 先按毁坏时间排序,优先修损坏早的,中途我们再改修的建筑. 枚举每个建筑x,如果能,就修:不能的话,从之前要修的建筑中找一个花时最大的need[top],如果need ...
- BZOJ 1029: [JSOI2007]建筑抢修 堆+贪心
1029: [JSOI2007]建筑抢修 Description 小刚在玩JSOI提供的一个称之为"建筑抢修"的电脑游戏:经过了一场激烈的战斗,T部落消灭了所有z部落的 入侵者.但 ...
- BZOJ 1029: [JSOI2007]建筑抢修【贪心】
1029: [JSOI2007]建筑抢修 Time Limit: 4 Sec Memory Limit: 162 MB Description 小刚在玩JSOI提供的一个称之为"建筑抢修&q ...
- P4053 [JSOI2007] 建筑抢修(反悔贪心)
P4053 [JSOI2007] 建筑抢修https://www.luogu.com.cn/problem/P4053 #include <iostream> #include <c ...
- bz 1029: [JSOI2007]建筑抢修
1029: [JSOI2007]建筑抢修 Time Limit: 4 Sec Memory Limit: 162 MB Submit: 3104 Solved: 1392 [Submit][Sta ...
- 洛谷——P4053 [JSOI2007]建筑抢修
P4053 [JSOI2007]建筑抢修 小刚在玩JSOI提供的一个称之为"建筑抢修"的电脑游戏:经过了一场激烈的战斗,T部落消灭了所有z部落的入侵者.但是T部落的基地里已经有N个 ...
- 牛客 [JSOI2007]建筑抢修
牛客 [JSOI2007]建筑抢修:传送门 题目描述 小刚在玩JSOI提供的一个称之为"建筑抢修"的电脑游戏:经过了一场激烈的战斗,T部落消灭了所有z部落的入侵者.但是T部落的基地 ...
- Bzoj1029 [JSOI2007]建筑抢修
Time Limit: 4 Sec Memory Limit: 162 MB Submit: 4452 Solved: 2006 Description 小刚在玩JSOI提供的一个称之为" ...
- 【每日一题】【[JSOI2007]建筑抢修】
题目描述 小刚在玩JSOI提供的一个称之为"建筑抢修"的电脑游戏:经过了一场激烈的战斗,T部落消灭了所有z部落的入侵者.但是T部落的基地里已经有N个建筑设施受到了严重的损伤,如果不 ...
最新文章
- 数据库 1205 Error 'Lock wait timeout exceeded; try restarting transaction' on query
- 北理计算机考研机试,北理工计算机2000-2010考研机试题目c语言实现.doc
- 比较某两个时间的时间戳相等
- 分享Intel的安全运营中心最佳实践
- UVa LA 3882 - And Then There Was One 递推,动态规划 难度: 2
- ARM中的ldr指令与adr、ldr伪指令之间的区别
- [批处理]截取for命令里面的变量%%i
- AUCAD自定义[2006.9.22]
- linux中执行历史第五个命令,Linux 快速执行历史命令,用 !编号
- 语音识别(3)---语音识别技术原理
- Go 语言“助力”恶意软件?仅 4 年基于 Go 的恶意软件数就激增 2000%!
- python怎么把代码做成软件_python代码能做成软件吗
- 使用DevExpress的PdfViewer实现PDF打开、预览、另存为、打印(附源码下载)
- #379 – 将ToolTip当做放大器使用(Using a Tooltip As a Magnifier)
- 怎么把pdf转换成excel转换器免费版
- window10系统onedrive无法登陆 ox8004def7
- 自动阅读 到底 能不能赚钱
- Android加密篇 MD5
- 立创梁山派GD32F450ZGT6--通过PCA9685控制16路舵机
- 基于WPF的桌面宠物开发(一) :WPF简介+环境搭建+简单界面
热门文章
- [bzoj1059]矩阵游戏
- JS window对象 Location对象 location用于获取或设置窗体的URL,并且可以用于解析URL。 语法: location.[属性|方法]...
- activity生命周期图
- Erlang 位串和二进制数据
- springside 4 web-init 启动
- C++ 学习杂谈:sizeof和sizeof(string)的问题
- 1106: 回文数(函数专题)
- 静态变量的多线程同步问题
- 基于supermap webgl三维楼层显隐控制思路
- 汕头市队赛 SRM16 T2