题目链接:点击这里

此题可用简单的贪心算法,具体可见CLRS中的贪心算法介绍。
可使用Exchange策略进行证明:当对执行任务进行递减排序并且依次执行时,可以达到最优解。
解题的基本思路:首先利用结构体存储每个部下的交代任务和执行任务的时间,然后进行操作符重载,使得可以直接使用内置sort函数进行排序,然后就能很愉快的AC了。
注意:进行操作符重载时只能重载<号。
问题:书上的标准代码,对结构体进行新建对象时采用的(work){b,j},不太理解。。。
C++代码如下:

#include <iostream>
#include <vector>
#include <algorithm>using namespace std;struct work
{int b,j;bool operator < (const work& x)const{return j > x.j;   //在这里操作符只能重载<号,因此return为>即可实现递减序列排序}work(int x, int y){b = x;j = y;}
};int main()
{int n,b,j,CASE = 1;while(cin>>n && n){vector<work> temp;for(int i = 0; i < n; i++){cin>>b>>j;temp.push_back(work(b,j));//(work){b,j}}sort(temp.begin(),temp.end());int worktime = 0;int ans = 0;for (int i = 0; i < n; i++){worktime += temp[i].b;ans = max(ans,worktime+temp[i].j);}cout<<"Case "<<CASE++<<": "<<ans<<endl;}return 0;
}

UVa112992-贪心算法相关推荐

  1. 算法设计与分析第3章 贪心算法

    第4章 贪心算法 贪心算法总是作出在当前看来最好的选择.也就是说贪心算法并不从整体最优考虑,它所作出的选择只是在某种意义上的局部最优选择. 贪心算法的基本要素 1.贪心选择性质 所谓贪心选择性质是指所 ...

  2. 贪心算法单源点最短路径例题c语言源代码,Dijkstra算法是解单源最短路径问题的一个贪心算法...

    问题描述 给定一个带权有向图 G=(V,E) ,其中每条边的权是一个非负实数. 另外,还给定 V 中的一个项点,称为源. 现在我们要计算从源到所有其他各项点的最短路径长度. 这里的长度是指路上各边权之 ...

  3. 贪心算法简单实践 -- 分糖果、钱币找零、最多区间覆盖、哈夫曼编解码

    1. 贪心算法概览 贪心算法是一种算法思想.希望能够满足限制的情况下将期望值最大化.比如:Huffman编码,Dijkstra单源最短路径问题,Kruskal最小生成树 等问题都希望满足限制的情况下用 ...

  4. 一份贪心算法区间调度问题解法攻略,拿走不谢

    作者 | labuladong 来源 | labuladong(ID:labuladong) [导读]什么是贪心算法呢?贪心算法可以认为是动态规划算法的一个特例,相比动态规划,使用贪心算法需要满足更多 ...

  5. 漫画:五分钟学会贪心算法!

    假设一个问题比较复杂,暂时找不到全局最优解,那么我们可以考虑把原问题拆成几个小问题(分而治之思想),分别求每个小问题的最优解,再把这些"局部最优解"叠起来,就"当作&qu ...

  6. 下载插件(贪心算法)

    小扣打算给自己的 VS code 安装使用插件,初始状态下带宽每分钟可以完成 1 个插件的下载.假定每分钟选择以下两种策略之一: 使用当前带宽下载插件 将带宽加倍(下载插件数量随之加倍) 请返回小扣完 ...

  7. Runnable接口和贪心算法

    1 Runnable接口 Runnable 接口应该由那些打算通过某一线程执行其实例的类来实现.设计该接口的目的是为希望在活动时执行代码的对象提供一个公共协议.激活的意思是说某个线程已启动并且尚未停止 ...

  8. 拜托,别再问我贪心算法了!

    来自:码海 前言 上篇一文学会动态规划解题技巧 被不少号转载了,其中发现有一位读者提了一个疑惑,在求三角形最短路径和时,能否用贪心算法求解.所以本文打算对贪心算法进行简单地介绍,介绍完之后我们再来看看 ...

  9. Dijkstra 贪心算法 动态规划

    我认为 Dijkstra算法 的本质是 广度优先搜索, 而此处的广度是定义在路程的cost之上的. (就好比从圆心处向外扩散一个圆环,首次碰到的就是最近) 动态规划泛指,重叠子问题与原问题的推算关系( ...

  10. 三十六、贪心算法--集合覆盖问题

    一.贪心算法介绍 1.贪心算法(又称贪婪算法)是指,在对问题求解时,总是做出在当前看来是最好的选择.也就是说,不从整体最优上加以考虑,算法得到的是在某种意义上的局部最优解 2.贪心算法不是对所有问题都 ...

最新文章

  1. numpy矩阵乘法的解惑
  2. IDNO简单生成方法
  3. ES6新特性之let和const命令
  4. MAC OS X10.9.5下成功驱动独立显卡影驰Nvidia GeForce GTX 760大将(4GB)--非公版
  5. windows查看、删除系统级隐藏文件(木马最喜欢用这招)
  6. C#基础11.2:单例设计模式
  7. webpack vs gulp 一张图说明
  8. 前端工具Gulp的学习
  9. 华硕点亮系统无法连接到服务器,华硕点亮点亮后台管理系统
  10. 影音先锋云服务器,影音先锋云服务器
  11. matlab图像噪声处理,基于matlab图像处理的去噪处理.doc
  12. 贝尔维尤游戏巨头融资2亿美元!
  13. 联想Y430P 下为 Ubuntu 安装无线网络
  14. 计算机屏幕出现蓝色条,我的电脑屏幕中间为何会有一道蓝色线条
  15. 协同(OA)应用中的七个机制
  16. 计算机工程系的文化是什么,计算机工程系科技文化节.doc
  17. 电源防反接电路设计(重要)
  18. 命令行发送邮件并修改发送人,避免自动邮件归置到垃圾邮件
  19. cuil -谷歌的竞争对手,中国也要思考,除了百度,我们更期盼百度二世诞生。
  20. DAO,除了协议、社交、媒体、服务之外还能发展哪个领域?

热门文章

  1. 【编解码】从零开始写H264解码器(4) 熵编码之指数哥伦布编码
  2. winform响应时间最长是多少分钟_漫威电影女性角色出场统计:谁出场时间最长?谁出场次数最多?...
  3. nmap 端口说明和扫描顺序
  4. EXCEL无格式黏贴
  5. 有博士点的计算机考研学校,河北省30所高校申报新增博士点33个,硕士点20个,有你母校吗?...
  6. 管家婆软件库存周转率的解释及计算方式
  7. 【UCIe】UCIe Clock Gating
  8. 保研面试/考研复试概率论与数理统计问题整理
  9. TSL2561 光照强度传感器应用笔记
  10. DHCP/DNS服务器配置与管理——3