摘要: 和最大化最小值类似,最大化平均值也可以通过二分法求得。 比如下面这个经典的问题: 有n个物品的重量和价值分别是wi和vi,从中选出k个物品使得单位重量价值最大。 样例输入: 样例输出: 分析: 一般先想到的是将每个物品的单位重量价值算出来,然后排个序,从大到小贪心进行选择,可惜这样是不对的,这样不能 阅读全文
posted @ 2018-04-23 21:19 shuai_hui 阅读(484) 评论(1) 推荐(0) 编辑
摘要: 描述 农夫 John 建造了一座很长的畜栏,它包括N (2 <= N <= 100,000)个隔间,这些小隔间依次编号为x1,...,xN (0 <= xi <= 1,000,000,000).但是,John的C (2 <= C <= N)头牛们并不喜欢这种布局,而且几头牛放在一个隔间里,他们就要发 阅读全文
posted @ 2018-04-23 20:46 shuai_hui 阅读(175) 评论(0) 推荐(0) 编辑
摘要: 最小化最大值. 和"河中跳房子","Agressive Cows"等最大化最小值问题正好相反的最小化最大值问题,同样用二分解决,原理基本相同,差别主要在C条件的判断上. 1.最大化最小值: 相当于n个东西分给m个人,使得每个人至少拿x个,那么每个人拿够了就走,给后面的人多留一点,只要能分够>=m个人 阅读全文
posted @ 2018-04-23 11:14 shuai_hui 阅读(610) 评论(0) 推荐(1) 编辑
摘要: 在输出小数的问题中,一般都会指定允许的误差范围或者是指定输出中小数后面的位数。 因此在使用二分搜索的时候,有必要设置合理的结束条件来满足精度的要。 如POJ:1064 的两份代码一样,注意EPS如果设置的太小,就有可能因为浮点小数的精度的原因导致陷入死循环,请注意了 阅读全文
posted @ 2018-04-23 11:06 shuai_hui 阅读(132) 评论(0) 推荐(0) 编辑
摘要: Description Inhabitants of the Wonderland have decided to hold a regional programming contest. The Judging Committee has volunteered and has promised 阅读全文
posted @ 2018-04-23 10:51 shuai_hui 阅读(189) 评论(0) 推荐(0) 编辑
摘要: 问题: 给定长度为N的单调不下降数列,求满足ai>=k的最小i。 输入: 5 3 2 3 3 5 6 输出: 1 #include<stdio.h> int main() { int n,k; int a[100]; scanf("%d%d",&n,&k); for(int i=0;i<n;i++) 阅读全文
posted @ 2018-04-23 10:37 shuai_hui 阅读(1278) 评论(0) 推荐(0) 编辑