贪心。。。

按照T2来进行排序,用堆来进行维护。循环一遍,如果循环时间加上已用时间不超过截止时间,那就ANS++。否则,将它与堆顶判断,如果小于堆顶就把堆顶踢出,把它加入。

 #include<cstdio>
 #include<algorithm>
 #include<queue>
 using namespace std;
 ;
 struct data{
     int la,e;
 }a[maxn];
 int n;
 priority_queue <int> que;
 bool cmp(const data &x,const data &y){
     return x.e<y.e;
 }
 int main(){
     scanf("%d",&n);
     ; i<=n; i++) scanf("%d%d",&a[i].la,&a[i].e);
     sort(a+,a+n+,cmp);
     ,ans=;
     ; i<=n; i++){
         int last=a[i].la;
         int en=a[i].e;
         if (now+last<=en){
             ans++;
             now+=last;
             que.push(last);
         }
         else {
             int tmp=que.top();
             if (tmp>last){
                 que.pop();
                 now=now-tmp+last;
                 que.push(last);
             }
         }
     }
     printf("%d\n",ans);
     ;
 } 

【JSOI2007】【Bzoj1029】建筑抢修的更多相关文章

  1. 【bzoj1029】【JSOI2007】建筑抢修

    1029: [JSOI2007]建筑抢修 Time Limit: 4 Sec  Memory Limit: 162 MBSubmit: 6417  Solved: 2883[Submit][Statu ...

  2. BZOJ_1029_[JSOI2007]_建筑抢修_(贪心+优先队列)

    描述 http://www.lydsy.com/JudgeOnline/problem.php?id=1029 \(n\)个任务需要完成,给出每个任务所需时间\(t_1\)与deadline\(t_2 ...

  3. BZOJ1029 建筑抢修

    Description 小刚在玩JSOI提供的一个称之为"建筑抢修"的电脑游戏:经过了一场激烈的战斗,T部落消灭了所有z部落的入侵者.但是T部落的基地里已经有N个建筑设施受到了严重 ...

  4. 【BZOJ】【1029】【JSOI2007】建筑抢修

    贪心 按T2(完成时限)排序,然后从前往后依次枚举 如果sum+a[i].t1<=a[i].t2则加入 如果来不及修这个建筑: 如果当前这个建筑的维修时间t1比之前修过的建筑中耗时最长的耗时短, ...

  5. 「JSOI2007」建筑抢修

    传送门 Luogu 解题思路 显然先把所有楼按照报废时间递增排序. 然后考虑 \(1\cdots i-1\) 都能修完, \(i\) 修不完的情况. 显然我们在这 \(i\) 个里面至多只能修 \(i ...

  6. [bzoj1029]建筑抢修<贪心>

    题目链接:http://www.lydsy.com/JudgeOnline/problem.php?id=1029 解析:这也算bzoj中比较简单的一道题,其实想通了就是非常的简单. 这题用贪心的方式 ...

  7. BZOJ1029: [JSOI2007]建筑抢修(贪心)

    题目链接:BZOJ1029: [JSOI2007]建筑抢修 题解:贪心思想,按结束时间从小到大排序,选花费时间尽量短的建筑维修,用堆维护. #include<stdio.h> #inclu ...

  8. BZOJ1029: [JSOI2007]建筑抢修[模拟 贪心 优先队列]

    1029: [JSOI2007]建筑抢修 Time Limit: 4 Sec  Memory Limit: 162 MBSubmit: 3785  Solved: 1747[Submit][Statu ...

  9. bzoj千题计划119:bzoj1029: [JSOI2007]建筑抢修

    http://www.lydsy.com/JudgeOnline/problem.php?id=1029 把任务按截止时间从小到大排序 如果当前时间+当前任务耗时<=当前任务截止时间,把这个任务 ...

  10. bzoj1029: [JSOI2007]建筑抢修(堆+贪心)

    1029: [JSOI2007]建筑抢修 题目:传送门 题解: 一道以前就做过的水题(找个水题签个到嘛...) 很明显就是一道贪心题,这里我们用一个堆来维护 具体看代码吧,很容易YY所以不讲 代码: ...

随机推荐

  1. mysql深入浅出的笔记(存储过程一)

    1.存储过程和函数....    存储过程和函数是事先经过编译并存储在数据库中的一段SQL语句的集合,调用存储过程和函数可以简化应用开发人员的很多工作,    减少数据在数据库中和应用服务器之间的传说 ...

  2. Mac OS X系统安装盘制作

    本文来记录一下制作苹果系统安装盘的步骤: 1. 准备一个空白的U盘或移动硬盘和去App Store下载好最新版本的系统,现在最新的是:macOS Sierra,下载后会默认打开安装进程,退出不管即可, ...

  3. day4(homework)

    第八单元 1) 将用户信息数据库文件和组信息数据库文件纵向合并为一个文件/1.txt(覆盖) 2) 将用户信息数据库文件和用户密码数据库文件纵向合并为一个文件/2.txt(追加) 3) 将/1.txt ...

  4. 基于Solr的空间搜索

    如果需要对带经纬度的数据进行检索,比如查找当前所在位置附近1000米的酒店,一种简单的方法就是:获取数据库中的所有酒店数据,按经纬度计算距离,返回距离小于1000米的数据. 这种方式在数据量小的时候比 ...

  5. PhpStorm/Xdebug安装使用

    安装环境:XAMPP;phpStorm版本10; windows 7 64bit. XAMPP.phpStorm 都直接安装在了D盘根目录,9999m目录建在D:\xampp\htocts下,即目录工 ...

  6. Knockout.js随手记(8)

    visible, disable, css绑定 这个例子非常简单,主要演示如何通过属性控制html元素的显示与否(visible),可用性(disable)以及根据属性添加相应的CSS样式. 先简单的 ...

  7. CMD批处理延时启动的几个方法

    批处理延时启动的几个方法 方法一:ping 缺点:时间精度为1秒,不够精确 @echo off @ping 127.0.0.1 -n 6 >nul start gdh.txt 方法二:vbs s ...

  8. 外接Hdmi没有声音怎么设置

    参考 http://www.3lian.com/edu/2013/07-16/81152.html 在小喇叭图标上右键->播放设备->禁用HDMI

  9. Spring MVC类型转换

    类型转换器引入 为什么页面上输入"12",可以赋值给Handler方法对应的参数?这是因为框架内部帮我们做了类型转换的工作.将String转换成int 但默认类型转换器并不是可以将 ...

  10. yii2的分页和ajax分页

    要想使用Yii分页类第一步:在控制器层加载分页类 use yii\data\Pagination;第二步: 使用model层查询数据,并用分分页,限制每页的显示条数$data = User::find ...