电池寿命问题 (贪心)
【题目描述】
小S新买了一个掌上游戏机,这个游戏机由两节5号电池供电。为了保证能够长时间玩游戏,他买了很多5号电池,这些电池的生产商不同,质量也有差异,因而使用寿命也有所不同,有的能使用5个小时,有的可能就只能使用3个小时。现在已知电池的数量和电池能够使用的时间,请你找一种方案使得使用时间尽可能的长。
【题目链接】
http://noi.openjudge.cn/ch0406/2469/
【算法】
其实一开始想的也没错:所有电池按使用时间之和分成尽可能接近的两组,若其中一组只有一个数,则最长时间为另一组使用时间之和,若两组均超过一个,则说明一定能全用完。事实上,两组均超过一个换句话说就是,所有电池中能用时间最大的那个小于总时间的一半,不然就会自成一组。。。所以这题目可以贪心的考虑最大时长电池,若大于其它所有电池之和,则为其余电池之和,反之为总时长一半。
【代码】
1 #include <bits/stdc++.h> 2 using namespace std; 3 int n,sum,maxn,i,a; 4 int main() 5 { 6 while(scanf("%d",&n)!=EOF) { 7 sum=maxn=0; 8 for(i=1;i<=n;i++) scanf("%d",&a),sum+=a,maxn=max(maxn,a); 9 if(maxn>sum-maxn) printf("%.1f\n",(double)sum-maxn); 10 else printf("%.1f\n",sum/2.0); 11 } 12 return 0; 13 }
转载于:https://www.cnblogs.com/Willendless/p/9352309.html
电池寿命问题 (贪心)相关推荐
- 贪心题集(vjoj)
首先总结一下贪心,算法贪心算法(重点就是一个贪字)是指,在对问题求解时,总是做出在当前看来是最好的选择.也就是说,不从整体最优上加以考虑,他所做出的是在某种意义上的局部最优解,而每个局部最优解的总和就 ...
- 算法设计与分析第3章 贪心算法
第4章 贪心算法 贪心算法总是作出在当前看来最好的选择.也就是说贪心算法并不从整体最优考虑,它所作出的选择只是在某种意义上的局部最优选择. 贪心算法的基本要素 1.贪心选择性质 所谓贪心选择性质是指所 ...
- 贪心算法单源点最短路径例题c语言源代码,Dijkstra算法是解单源最短路径问题的一个贪心算法...
问题描述 给定一个带权有向图 G=(V,E) ,其中每条边的权是一个非负实数. 另外,还给定 V 中的一个项点,称为源. 现在我们要计算从源到所有其他各项点的最短路径长度. 这里的长度是指路上各边权之 ...
- Too Many Segments CF595D 贪心乱搞
传送门! 比赛的时候没有时间写了,看看了看大佬的代码,学习学习. 一开始实验室大佬说是用差分写的,但是看了代码发现打cf的人大家都是stl狂魔! 贪心思路:区间按照左端点排序,从1~2e5遍历每一个点 ...
- Roundgod and Milk Tea 贪心
这个题好像可以用一种类似与置换的贪心方法来做~ sum记为剩余奶茶,一开始sum等于奶茶和 ans记录已经喝的奶茶数 不用排序,我们就从前往后直接处理,考虑的是每一个班最多可以喝多少杯奶茶 就是从剩余 ...
- 贪心算法简单实践 -- 分糖果、钱币找零、最多区间覆盖、哈夫曼编解码
1. 贪心算法概览 贪心算法是一种算法思想.希望能够满足限制的情况下将期望值最大化.比如:Huffman编码,Dijkstra单源最短路径问题,Kruskal最小生成树 等问题都希望满足限制的情况下用 ...
- 贪心:expedition 最优加油方法
已知一条公路上,有一个起点与一个终点,这之间有n个加油站;已知从这n个加 油站到终点的距离d与各个加油站可以加油的量l,起点位置至终点的距离L与起 始时刻油箱中汽油量P;假设使用1个单位的汽油即走1个 ...
- 贪心:Burst Balloons 最少次数完成射击气球
已知在一个平面上有一定数量的气球,平面可以看作一个坐标系,在平面的x轴的不同位 置安排弓箭手向y轴方向射箭,弓箭可以向y轴走无穷远;给定气球的宽度 xstart ≤ x ≤ xend,问至少需要多少弓 ...
- 贪心:jump 游戏(获取最少跳跃的次数以及跳跃路径)
一个数组存储了非负整型数据,数组中的第i个元素a[i],代表了可以从数组第i个 位置最多向前跳跃a[i]步;已知数组各元素的情况下,求是否可以从数组的第0个位置跳跃到数组的最后一个元素的位置,返回最少 ...
最新文章
- Python 开发者节省时间的 10 个小技巧
- linux下使用yum安装mysql
- Oracle常用知识
- Gis 热点技术分析
- java版b2b2c社交电商spring cloud分布式微服务(二) 服务消费者(rest+ribbon)
- siesta在Linux运行,siesta-3.0-b
- 年度影像旗舰vivo X70系列正式发布 售价3699元起
- python中打印输出date信息
- IBM Lotus Domino V8.5 服务器管理入门手册
- hive 不同用户 权限设置 出错处理
- 数据时代,嵌入式工程师必须知道的八大加密算法
- 天题系列:Substring with Concatenation of All Words
- SQL Server Join方式
- 基于鸿蒙js框架实现的wearable五子棋软件
- Redis 实战之多节点分布式锁【SpringBoot + RedLock】
- centos7 定时清理内存
- 九九乘法表居中c语言,excel图文教程:九九乘法表的制作方法,你会哪种?
- Android Studio 部分查找快捷键
- 【技术面试官如何提问】
- windows CMD批处理中的一些特殊连接符号