贪心算法
文章平均质量分 66
北狗最光阴1
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
HDU 1009 FatMouse'Trade
这道题显而易见用的是贪心算法,不过到底什么是贪心,自己也说不上来,不过这个题目个人感觉就是,如果要想得到更多的东西就是每次花费最少的food,得到最多的JavaBeans,按照这个思路去做结果就对了。看贪心的教程,说贪心就是有这种显而易见的感觉。#include #include #include #include #include using namespace std;cons原创 2014-11-26 16:20:12 · 352 阅读 · 0 评论 -
CodeForces 160B Unlucky Ticket
这个题目是放在贪心算法的题目中的,说实话自己真的想不出和贪心有什么关系,因为自己对贪心就是一知半解,没有把握它的内涵与本质。这题我的想法就是比较前一半的数是不是全都大于后一半的数,或者全小于。当然在比较之前,要先把前一半和后一半的数进行排序,然后再进行比较。写完之后,我深刻怀疑是不是想错了,还是我题意理解错了,英语渣渣嘛!可是当我提交之后,竟然过了。我就在想,这个就是贪心思想吗?最直观的想法就是贪原创 2014-11-26 18:14:54 · 548 阅读 · 0 评论 -
POJ 1017 Packets
这题可能是用贪心思想来写的,具体是不是我也不知道,自己对贪心也不是太清楚。之前好像写过,当时似乎没有写出来,不过,这次一下就有了思路。本来是想先装小的包裹,可是试了一下不行,有问题;于是改为先装大的包裹,如果有多余,再装小的,每次都这样,直到所有的包裹被装完为止。试了试,感觉没有什么问题。代码写的可能有的乱,不过思路还是清楚的。#include#include#include#inc原创 2015-01-30 15:57:06 · 521 阅读 · 0 评论 -
HDU 1051 Wooden Sticks
这题就是贪心算法,先对length升序排列,如果length相等,再按weight升序排列;反之亦可。然后根据题目要求进行选择即可。不过我在写排序函数的时候出了一点问题,害得我还一度以为我的贪心策略是错的。#include#include#include#include#include#includeusing namespace std;const int N=5005;原创 2015-02-02 21:14:28 · 528 阅读 · 0 评论 -
POJ 2231 Moo Volume
这题用的是贪心算法来算的,贪心策略如下:dist数组表示各个牛的位置距第一个牛的距离,当然之前要对牛的位置进行升序排序。设a为第一头牛距各头牛的距离的总和,然后从第二头牛开始遍历,假设遍历到第i头牛时,那么标准为:t=t-(n-i)*d+i*d,各变量的含义为:t一开始为a,然后每次就是该表达式运算之后的值;n为牛的总数;d为第i头牛和第i-1头牛之间的距离。这个公式画图其原创 2015-02-02 22:01:29 · 739 阅读 · 0 评论 -
ZOJ 1409 Communication System
这题用的是贪心算法,不过在贪心之前还是要进行部分处理的。首先就是题目要求B/P尽可能的大,所以P应该尽可能的小,B应该尽可能的大。但是B和P的处理方式是不一样的,B是所有带宽中最小的那一个,P是所有设备的总价钱,所以我能想到一个方法就是一个一个的枚举B,本来我是不敢这样想的,可是题目给的时间比较长,我觉得应该问题不大,当我运行之后,竟然只是0ms,让我吃了一惊。然后再选择设备,这时候就要用到贪原创 2015-02-03 22:43:41 · 603 阅读 · 0 评论 -
HDU 1338 Game Prediction
这题我用的是贪心算法,我的理解是这样的:要求我最少能赢的次数,就是求别人最多能赢的次数。首先把我的牌先升序排序,然后我从小开始出,对于我出的牌,别人应该尽可能的压,而且用他们比我大的最小的那张牌;如果他们不压,那么他们后面这张牌就很有可能用不上,就少赢一次。#include#include#include#include#include#includeusing namespa原创 2015-02-03 21:25:52 · 643 阅读 · 0 评论 -
HDU 1009 今年暑假不AC
本题算是贪心中的基础题。#include #include #include #include using namespace std;const int N=102;struct time{ int s,e;}data[N];int n;bool cmp(time a,time b){ if(a.e==b.e) return a.s<b.原创 2015-02-21 10:50:48 · 726 阅读 · 0 评论
分享