贪心算法之电池的寿命
吓 你 一 跳 先!!
今天这道题,号称是2013年北京大学计算机系推免研究生入学考试题,听起来很唬人有木有!
题 目
小S新买了一个掌上游戏机,这个游戏机由两节5号电池供电。为了保证能够长时间玩游戏,他买了很多5号电池,这些电池的生产商不同,质量也有差异,因而使用寿命也有所不同,有的能使用5个小时,有的可能就只能使用3个小时。显然如果他只有两个电池一个能用5小时一个能用3小时,那么他只能玩3个小时的游戏,有一个电池剩下的电量无法使用,但是如果他有更多的电池,就可以更加充分地利用它们,比如他有三个电池分别能用3、3、5小时,他可以先使用两节能用3个小时的电池,使用半个小时后再把其中一个换成能使用5个小时的电池,两个半小时后再把剩下的一节电池换成刚才换下的电池(那个电池还能用2.5个小时),这样总共就可以使用5.5个小时,没有一点浪费。
现在已知电池的数量和电池能够使用的时间,请你找一种方案使得使用时间尽可能的长。
加油!
解 析
对于每组数据只要判断
最大的那个数是不是比其余的数的和都要大,
如果成立的话那当然就是剩下的所有电池与最大的电池车轮战,最大值为n-1个数的和,
如果不成立的话那么最大就是n个数的和的一半,也就是说电池电量是一定可以全部用完的。
加油!
解 析 之 二
同志们肯定都在想
加油!
你们最爱的代码在此
加油!
题外话:电池回收一定要注意,千万不能乱扔!
加油
往期精彩推荐
某些图片来自互联网,如有侵权,请联系删除
欢迎关注
亮星的信息学小屋
亮星的信息学小屋
觉得有用,请点右下方“在看”,谢谢鼓励