[JSOI2007]建筑抢修
题解:贪心+优先队列
要尽可能的修理更多的大楼,但是大楼没有权值,也就是说优先级是相同的,那么利用贪心思想,尽量先去修快坏的楼。所以基于这一点,我们就按照大楼打截至时间来进行排序。
如果中途某个建筑i无法在他的的截止时间内修复,那么在先前选择修复的较长时间的建筑踢掉,换成修复时间较短的这个建筑,也就是说若第i号出现时间不足,那么前i个建筑中最多修复i−1个建筑,那么我们必然选择a[i]较小的前 i−1个建筑,给后面的修复留下更多的时间,实现这个操作当然是用STL里面的priority_queue了。
#pragma GCC optimize(3,"Ofast","inline")
#include <bits/stdc++.h>
const int maxn = 2e6;
const int MaxN = 0x3f3f3f3f;
const int MinN = 0xc0c0c00c;
typedef long long ll;
const int mod = 1e9+7;
using namespace std;
struct wazxy{int time,ends;
}a[maxn];
struct rule{bool operator()(const wazxy &a,const wazxy & b){return a.ends<b.ends;}
};
priority_queue<int> q;
int main()
{int n;cin>>n;for(int i=1;i<=n;i++){scanf("%d%d",&a[i].time,&a[i].ends);}sort(a+1,a+n+1,rule());ll t=0,ans=0;for(int i=1;i<=n;i++){if(t+a[i].time<=a[i].ends){t+=a[i].time;q.push(a[i].time);ans++;} else if(!q.empty()&&q.top()>a[i].time){t-=q.top();q.pop();t+=a[i].time;q.push(a[i].time);}}cout<<ans<<endl;return 0;
}
[JSOI2007]建筑抢修相关推荐
- 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个 ...
- 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 ...
- 牛客 [JSOI2007]建筑抢修
牛客 [JSOI2007]建筑抢修:传送门 题目描述 小刚在玩JSOI提供的一个称之为"建筑抢修"的电脑游戏:经过了一场激烈的战斗,T部落消灭了所有z部落的入侵者.但是T部落的基地 ...
- P4053 [JSOI2007] 建筑抢修(反悔贪心)
P4053 [JSOI2007] 建筑抢修https://www.luogu.com.cn/problem/P4053 #include <iostream> #include <c ...
- Bzoj1029 [JSOI2007]建筑抢修
Time Limit: 4 Sec Memory Limit: 162 MB Submit: 4452 Solved: 2006 Description 小刚在玩JSOI提供的一个称之为" ...
- 牛客网 【每日一题】5月26日题目精讲 [JSOI2007]建筑抢修
链接: 文章目录 题目描述 题意: 题解: 题目描述 小刚在玩JSOI提供的一个称之为"建筑抢修"的电脑游戏:经过了一场激烈的战斗,T部落消灭了所有z部落的入侵者.但是T部落的基地 ...
- 【每日一题】【[JSOI2007]建筑抢修】
题目描述 小刚在玩JSOI提供的一个称之为"建筑抢修"的电脑游戏:经过了一场激烈的战斗,T部落消灭了所有z部落的入侵者.但是T部落的基地里已经有N个建筑设施受到了严重的损伤,如果不 ...
- 刷题记录:牛客NC20154[JSOI2007]建筑抢修
传送门:牛客 题目描述 小刚在玩JSOI提供的一个称之为"建筑抢修"的电脑游戏:经过了一场激烈的战斗,T部落消灭了所有z部落 的入侵者.但是T部落的基地里已经有N个建筑设施受到了严 ...
最新文章
- 浏览器对象模型BOM
- 自考计算机原理知识点,09年自考计算机网络实用技术知识点:ATM原理
- GridSearchCV 参数
- 为什么现在的手机价格越来越高,最后一条真相了...
- mysql 5.6 64位解压版_MySQL 5.6 for Windows 解压缩版配置安装(win 10 64位亲测)附安装包下载链接...
- Mongodb-副本集
- java数组原理_Java数组排序原理
- 美团 -python
- ACL2021 | 没想到Mixup还可以用于文本:SSMix
- classloader隔离练习
- lingo与excel
- 指定vtp为服务器命令,VTP与单臂路由
- c语言程序小时工资计算,C语言入门之工资计算
- 心理测试单机小软件,成人心理测评系统(单机版)
- php 三色排序,三色旗排序问题 | 学步园
- 计算机视觉城市排名,计算机视觉技术量化城市变迁
- 第15周实践项目-洗牌(范型程序设计)(1)
- 魅族千元新机曝光:处理器不错!
- 量子计算机的内存有多大,人类大脑的容量有多大,相当于多少G的内存?答案你都不敢相信...
- Xmind 8 安装及破解方法