[JSOI2007]建筑抢修

简介: [JSOI2007]建筑抢修

题目: [JSOI2007]建筑抢修 ,哈哈,我们今天来看一道贪心算法的题嘛,这是选自JSOI上的一道题,好了,我们一起来看看题意吧:

考虑到直接复制题目,或者截屏的方式不是很方便阅读,我就把直接题目链接放下面!

题目传送门: [JSOI2007]建筑抢修

思路:

这道题可以采用反悔贪心算法,具体的就看代码吧,有注释的!

我们来看看成功AC的代码吧:

#include<bits/stdc++.h>
using namespace std;
#define ll long long
int n;
struct ty{
    int t1,t2;
}a[150010];
int cmp(ty e1,ty e2){//排序方式
    return e1.t2<e2.t2;
}
priority_queue<int> q;//定义一个大根堆
ll ans=0,now=0;
int main(){
    ios::sync_with_stdio(false);
    cin>>n;
    for(int i=1;i<=n;i++) cin>>a[i].t1>>a[i].t2;
    sort(a+1,a+1+n,cmp);//按照截止时间短的方式排序
    for(int i=1;i<=n;i++){
        if(now+a[i].t1<=a[i].t2){//若加入的建筑可以修就直接修
            ans++;
            now+=a[i].t1; q.push(a[i].t1);//加上当前建筑需要修的时间,并把当前需要修的时间加入堆里
        }else{//加入的建筑不可以直接修
            if(a[i].t1<q.top()){//我们看看是否可以后悔修上一个建筑
                now-=q.top();now+=a[i].t1; q.pop();q.push(a[i].t1);
            }
        }
    }
    cout<<ans;
    return 0;
}


相关文章
城市建筑通视分析 通视分析
城市建筑通视分析 通视分析
39 0
|
机器学习/深度学习 存储 传感器
智慧农业小麦室外病虫害防治规范,北斗农业
主要包括农田信息采集、土壤养分及分布调查、农作物施肥、农作物病虫害防治、特种作物种植区监控、以及农业机械无人驾驶、农田起垄播种、无人机植保等应用,其中农业机械无人驾驶、农田起垄播种、无人机植保等应用对高精度北斗服务需求强烈。
157 0
|
物联网 新能源
绿色建筑真的可以帮助应对气候变化吗?
绿色建筑通过提高能源效率和促进更大的绿色和可持续社区,努力减缓气候变化的影响。
343 0
绿色建筑真的可以帮助应对气候变化吗?
|
物联网 定位技术 监控
大气网格化监测,网格化大气环境监测系统,成都纵横智控
作为国内环境监测行业领先的成都纵横智控,积累了多年的大气环境监测仪器设备制造应用和大气环境领域监测的经验,针对目前城市大气环境监测网格化建设,推出的新一代城市**大气网格化监测**系统,可以实现城市区域环境多维一体化监测管理
|
监控 物联网 数据可视化
智慧园区-楼宇建模技巧之【建楼篇】
一、国际惯例先上图 二、有什么用?用什么搞的?花了多久? 用途 室内定位(会议室、停车位查找等)安防监控(直接定位到某个楼道的摄像头拉取视频流)各种传感器数据三维可视化 请问哪里可以买到呢(含笑半步癫2333) 我这里正好有一个。
4901 0
彩铅练习,建筑
失败的画作,谨此记录 image.png
758 0