贪心(ZOJ 3778,Talented Chef)
来源:互联网 发布:python 多线程 返回值 编辑:程序博客网 时间:2024/05/18 02:12
http://acm.zju.edu.cn/onlinejudge/showProblem.do?problemCode=3778
给你n道菜,第i道菜需要a[i]步才能完成,厨师每次最多可以取m道不同的菜,各完成1步,问最少要多少次才能完成。
答案:
设a=max(a[i]),1<=i<=n。即完成某道菜最多需要的步数。
b=((∑a[i])-1)/m+1。步数和除以m,向上取整。
答案就是max(a,b)。
证明:
如果除了最后一次,每次都能取m道不同的菜,那答案就是b。
否则,肯定存在某一次,剩下的菜少于m道,而且不能一次完成。
因为菜与菜之间唯一的区别就是剩下的步数,所以我们每次取剩下的步数最多的m道菜来制作一定是最优解。
如果哪怕是这样做,依然遇上了没菜做的情况,那么说明我们之前每次肯定都取了最多步数的那道菜。更重要的是我们以后也依然会是这样,所以答案就是a。
因为答案必是a,b之一而且两者又刚好都是一个下限,所以取最大值就是最终答案。
思路:
ACM这种东西以AC为准,就算不能给出严格证明,也可以猜一猜。
0 0
- ZOJ 3778 Talented Chef (贪心)
- 贪心(ZOJ 3778,Talented Chef)
- zoj 3778 Talented Chef 贪心
- ZOJ 3778 Talented Chef【贪心】
- ZOJ 3778 Talented Chef (贪心+二分)
- ZOJ 3778 Talented Chef
- 【zoj】 3778 Talented Chef
- zoj 3778 Talented Chef
- ZOJ 3778 Talented Chef
- zoj 3778 Talented Chef
- ZOJ 3778 Talented Chef
- ZOJ 3778 Talented Chef
- ZOJ 3778 Talented Chef
- ZOJ 3778 Talented Chef
- ZOJ 3778Talented Chef
- zoj 3778 Talented Chef
- ZOJ 3778 Talented Chef(数学啊 )
- ZOJ 3778 Talented Chef(计算器模拟)
- H.264编码下直播视频添加水印的优化
- Mac版R语言(四)网络数据自动获取
- Java中的23种设计模式
- 键盘Keycode对照表
- 程序员什么时候该考虑辞职?
- 贪心(ZOJ 3778,Talented Chef)
- WORD2010/WPS使用快捷键
- 第五次c++上机实验报告
- Python3 回朔法完成作业分配
- Error:java: Compilation failed: internal java compiler error
- input输入子系统分析
- 如何在 JIRA action 中使用 soy 来形成视图?
- HTML5基础加强css样式篇(伸缩容器子元素属性:order,flex-grow,flex-shrink,flex-basis,flex,align-self)(五十四)
- js动态添加网页元素的三种方法