贪心
hexianhao
这个作者很懒,什么都没留下…
展开
-
nyoj 586
疯牛时间限制:1000 ms | 内存限制:65535 KB难度:4描述农夫 John 建造了一座很长的畜栏,它包括N (2 但是,John的C (2 输入有多组测试数据,以EOF结束。第一行:空格分隔的两个整数N和C第二行——第N+1行:分别指出了xi的位置输出每组测试数据输出一个整数,满足题意的最大的最小值,注意换行。样例输入原创 2016-02-09 14:51:19 · 268 阅读 · 0 评论 -
nyoj 208 Supermarket(贪心)
Supermarket时间限制:1000 ms | 内存限制:65535 KB难度:4描述A supermarket has a set Prod of products on sale. It earns a profit px for each product x∈Prod sold by a deadline dx that is measured a原创 2016-08-20 10:34:14 · 237 阅读 · 0 评论 -
nyoj 791 Color the fence(贪心)
Color the fence时间限制:1000 ms | 内存限制:65535 KB难度:2描述Tom has fallen in love with Mary. Now Tom wants to show his love and write a number on the fence opposite to Mary’s house. Tom thinks t原创 2016-08-17 20:14:34 · 363 阅读 · 0 评论 -
hdu 5720(贪心)
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=5720官方题解:考虑三角形三条边a,b,ca,b,c (a >= b)的关系a−bc,a+b>c ,即c∈(a−b,a+b) 。令加入的边为c ,枚举所有边作为a 的情况。对于所有可行的b ,显然与a 相差最小的可以让(a−b,a+b) 覆盖范围最大,所以可以贪心地选择不大于a 的最大的b原创 2016-07-18 10:57:31 · 290 阅读 · 0 评论 -
hdu 4982(贪心思想)
Goffi and Squary PartitionTime Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Problem DescriptionRecently, Goffi is interested in squary partition of int原创 2016-07-01 10:16:38 · 264 阅读 · 0 评论 -
hdu 5055(贪心)
题意:给你N个数,每个数的取值范围为[0,9],求这N个数组成的最大奇数,且该奇数不能有前导零。解题思路:将偶数和奇数分开,然后分别按从小到大排序,将最小的奇数先拿出来,把剩余的数从大到小排好,最后再将最小的奇数放进去。#include#include#include#includeusing namespace std;const int maxn = 105;int n,原创 2016-06-25 17:43:22 · 330 阅读 · 0 评论 -
hdu 5248(二分+贪心)
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=5248解题思路:这道题我原本的思路是动态规划,结果看到数很大,结果放弃了。然后想到二分,思路是对的,只是在check()函数时想的太复杂了,没有想到这里有贪心的结构,而采用的是动规去枚举。结果超时了。假设二分枚举到x,那么a[i]就可以尽可能地变小,最小可以小到a[i]-x,这样就可以把数列变成尽可原创 2016-05-19 21:13:05 · 328 阅读 · 0 评论 -
hdu 5246(贪心)
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=5246解题思路:先排序,在采用贪心的方法,先给百小度找到合适的初始战斗力,找到比初始战斗力上限小的中最大的来打,并将初始战斗力和他设置成相同的即可。接下来就是提升战斗力了,如果当前战斗力power+k >= a[i],说明第i个对手是可以打败的并且能够获得战斗力的提升。#include转载 2016-05-19 16:48:11 · 271 阅读 · 0 评论 -
POJ 1505(二分+贪心)
题意:给一些书,这些书有不同的页数,让把这些书分成k份,必须是连续的,问这些份中页数和的最大值最小是多少。解题思路:知道了页数和的范围,而且书都是连续的,要找到页数和最大值的最小值可以直接二分答案。。AC:#include#include#includeusing namespace std;const int MAXM = 505;int m,k;int book[MA原创 2016-02-17 11:06:47 · 606 阅读 · 0 评论 -
poj 1017
题意:一个工厂制造的产品形状都是长方体盒子,它们的高度都是 h,长和宽都相等,一共有六个型号,分别为1*1, 2*2, 3*3, 4*4, 5*5, 6*6。这些产品通常使用一个 6*6*h 的长方体箱子包装然后邮寄给客户。因为邮费很贵,所以工厂要想方设法的减小每个订单运送时的箱子数量BoxNum。解题思路:贪心思想:1)6*6、5*5、4*4的原创 2016-02-14 12:11:06 · 324 阅读 · 0 评论 -
poj 1716(贪心)
题意:给出数轴上的n个区间,每个区间都是连续的int区间。现在要在数轴上任意取一堆元素,构成一个元素集合V,要求每个区间和元素集合V的交集至少有两个不同的元素求集合V最小的元素个数。解题思路:考虑到区间之间的重叠性,所以每次都要尽可能地去每个区间靠后的值,才能保证前后两个区间公共的元素最多,其实把握了这个思想后就是个简单的贪心思想了。一开始我是拿每个区间的开始端进行排序,结果WA。。。后面原创 2016-02-14 09:19:57 · 317 阅读 · 0 评论 -
poj 1230(贪心)
解题思路:这道题目是用贪心的思想,从左向右扫描场地的每一列是否合法。若不合法,贪心的找出从该列起向右延伸最长的m道墙,移除这m道墙使得该列合法。我最开始代码会出现这样的问题:如果两个墙是连在一起的,那么会被当做一个墙来处理。。。AC:#include #include#includeusing namespace std;const int White = 0;int n,原创 2016-02-13 17:13:31 · 444 阅读 · 0 评论 -
hdu 1055(贪心)
思路:寻找最大权值,合并这个节点和他的父亲节点,记下这两个节点的拓扑序列,同时新节点的权值为这些节点的算术平均值,直到只有一个节点。因为这个节点必定是访问该节点的父节点之后第一个访问的节点。 证明:对于每一次新的访问,我们要计算所有未被访问的点权之和。显然这个计算式很繁琐且不易处理。ò 思考:根据访问代价的计算规则,对于根节点,它的权值需要计算1次;对于第2个访问转载 2016-02-13 09:54:03 · 689 阅读 · 0 评论 -
nyoj 47
题目链接:http://acm.nyist.net/JudgeOnline/problem.php?pid=47分析:如果n==1或者n==2,所有人直接过河即可;如果n==3,用时最短的和用时最长的一起过去,然后用时最短的回来,再和剩下的一个人过去 ;如果n>=4,设a[0]表示用时最短的人所用的时间,a[1]为用时第二短的人所用的时间,a[n-1]表示用时最转载 2016-02-10 20:33:29 · 320 阅读 · 0 评论 -
nyoj 1057
寻找最大数(三)时间限制:1000 ms | 内存限制:65535 KB难度:2描述给出一个整数N,每次可以移动2个相邻数位上的数字,最多移动K次,得到一个新的整数。求这个新的整数的最大值是多少。输入多组测试数据。每组测试数据占一行,每行有两个数N和K (1 ≤ N≤ 10^18; 0 ≤ K ≤ 100).输出每组测试数据的原创 2016-02-10 17:27:46 · 297 阅读 · 0 评论 -
nyoj 287(区间覆盖)
题目链接:http://acm.nyist.net/JudgeOnline/problem.php?pid=287解题思路:首先求出来每个点的临界区域,即这个圆心能够将其覆盖的范围。。。求出了每个点的覆盖区域,那么问题就转化为区间的覆盖问题了。。。在算重叠的部分花了好长的时间而且还没有写好,还是没有把出现的情况讨论清楚。。。AC:#include#include#inclu原创 2016-02-10 12:54:27 · 393 阅读 · 0 评论 -
nyoj 12(区间覆盖)
贪心策略是将左端点从小到大排序,选择右端点,使得右端点尽量覆盖的最远AC:#include#include#includeusing namespace std;const int MAX=10001;struct interval{ double left,right;};bool cmp(interval a,interval b){转载 2016-02-10 10:54:59 · 297 阅读 · 0 评论 -
nyoj 914
解题思路:k个物品单位重量的最大价值一定不会超过单个物品单位价值的最大值,且一定不小于0,这样我们就求出了最终答案所在的区间。然后利用二分压缩区间,直到求出最终结果。这道题目确实把二分法运用的很巧妙。。AC:#include#include#include#includeusing namespace std;const int maxn = 10005;const doub原创 2016-02-09 19:09:51 · 469 阅读 · 0 评论 -
nyoj 680 摘枇杷(二分+贪心)
摘枇杷时间限制:2000 ms | 内存限制:65535 KB难度:3描述理工学院的枇杷快熟了,ok,大家都懂得。而且大家都知道,学校的枇杷树都是一列一列的。现在小Y同学已经在筹划怎么摘枇杷了。现在我们假设有一列枇杷树,而且每棵枇杷树上枇杷果的数量小Y都已经知道了。假设现在有n棵枇杷树,小Y可以把这n棵枇杷树分成m组,每组枇杷果的数量是这组内每棵原创 2016-09-28 21:14:21 · 422 阅读 · 0 评论