[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;
}


相关文章
|
2月前
|
存储 传感器 监控
未来城市的智慧交通系统
智慧交通系统是未来城市发展的重要组成部分,通过整合物联网、大数据和人工智能技术,实现交通的智能化管理。本文探讨了智慧交通系统的关键技术、架构及其在实际应用中的案例,并展望了未来的发展趋势。
|
2月前
热电材料:温差发电的绿色能源技术
【10月更文挑战第17天】温差发电技术利用热电材料将热能直接转换为电能,具有环境友好和高效的特点。本文介绍了热电材料的基础知识、温差发电的工作原理及应用案例,包括人体体温发电、海洋温差发电和工业余热利用,并展望了热电材料的未来发展。
|
物联网 定位技术 监控
大气网格化监测,网格化大气环境监测系统,成都纵横智控
作为国内环境监测行业领先的成都纵横智控,积累了多年的大气环境监测仪器设备制造应用和大气环境领域监测的经验,针对目前城市大气环境监测网格化建设,推出的新一代城市**大气网格化监测**系统,可以实现城市区域环境多维一体化监测管理
|
监控 物联网 数据可视化
智慧园区-楼宇建模技巧之【建楼篇】
一、国际惯例先上图 二、有什么用?用什么搞的?花了多久? 用途 室内定位(会议室、停车位查找等)安防监控(直接定位到某个楼道的摄像头拉取视频流)各种传感器数据三维可视化 请问哪里可以买到呢(含笑半步癫2333) 我这里正好有一个。
4986 0
彩铅练习,建筑
失败的画作,谨此记录 image.png
778 0