ACM_贪心
文章平均质量分 69
_天道酬勤_不忘初心
这个作者很懒,什么都没留下…
展开
-
算法精讲:贪心
介绍贪心算法是在每一步选择中都采取当前最好的或者最优的选择,从而导致最终的结果是最好的或者最优的。贪心算法可以解决解决一些最优化问题,如求图中的最小生成树,求哈夫曼编码。算法的思想还是比较容易理解的,难的是问题能否用贪心解决,贪心的具体策略是什么?翠花,上题。练过几个题后估计你就会有自己的评估了分发饼干题目来源:LeetCode 455.分发饼干题目描述:假设你是一位很棒的家长,想要给你的孩子们一些小饼干。但是,每个孩子最多只能给一块饼干。对每个孩子 i ,都有一个胃口值 gi ,这是能让孩子们满原创 2020-06-26 14:23:40 · 346 阅读 · 0 评论 -
POJ 3617 (贪心)
题目地址:http://poj.org/problem?id=3617别人的代码,有时间看看AC代码:#include char s[2002], tmp[2];int n;int main(){ while(~scanf("%d", &n)) { for(int i=0;i<n;i++) { scanf(原创 2016-05-31 19:43:30 · 407 阅读 · 0 评论 -
HDU 3420 Bus Fair(贪心)
题目地址:http://acm.hdu.edu.cn/showproblem.php?pid=3420思路:AC代码:#include #include #include #include #include #include #include #include #include #include #include const int inf = 0x3f3f3f3原创 2016-05-08 19:34:14 · 544 阅读 · 0 评论 -
HDU 4864 Task
题目地址:点击打开链接思路:做完这道题才发现网上的好多代码都是互相粘的,根本没有吃透代码,下面会给一个我参考网上AC的代码,但是在我仔细深入理解的基础上,找出了BUG,代码是错的,虽然它AC了,有一类情况,它没考虑到,还有就是不能为机器选任务,要为任务选机器虽然AC但是错误的代码:#include #include#includeusing namespace std;st原创 2015-07-21 19:49:48 · 437 阅读 · 0 评论 -
POJ 2376 Cleaning Shifts(贪心)
题目地址:http://poj.org/problem?id=2376思路:起点为1的选一个最大的,剩下的放到结构体中,排序一下贪心就行AC代码:#include #include #include #include #include #include #include #include #include #include #include const int i原创 2016-05-31 18:45:37 · 302 阅读 · 0 评论 -
HDU 3402 Ants run!(比较好的贪心)
题目地址:http://acm.hdu.edu.cn/showproblem.php?pid=3402思路:还是有坑的,蚂蚁不是提前放好的,要自己放一下,放的时候肯定是将速度差不多的放在一起这样才能保证时间最长,pi要用公式求出来,不然会有精度问题放的时候还有2种方法速度最快 速度第二快 速度第三快 ... 最慢最慢...... 速度第三快 速度第二快 速度最快选择上面原创 2016-05-08 13:43:00 · 501 阅读 · 0 评论 -
POJ 1042 Gone Fishing(模拟+贪心)
代码:#include #include #include using namespace std;struct node{ int first; int reduce;}a[30];int b[30];int time[30];int pre[30][30];int c[30];int main(){ int n,h; while(sc原创 2016-04-26 21:28:00 · 298 阅读 · 0 评论 -
HDU 3177 Crixalis's Equipment(很巧妙的贪心)
题目地址:http://acm.hdu.edu.cn/showproblem.php?pid=3177思路:刚开始的想法是挪的时候占体积大的先进,如果挪的体积相同,则放的时候体积小的先进,结果wrong了,举一个反例40 220 302 19大神地址:http://blog.csdn.net/hjd_love_zzt/article/details/9877115AC代码:原创 2016-03-27 17:41:51 · 271 阅读 · 0 评论 -
第三届河南ACM省赛(BUYING FEED)
题目地址:http://acm.nyist.net/JudgeOnline/problem.php?pid=248思路:刚开始用DP 写写费了,看了别人的解题报告才知道用贪心也可以解决,有时间再用DP写写AC代码:#include #include #include #include #include #include #include #include #includ原创 2016-03-02 20:33:47 · 466 阅读 · 0 评论 -
河南第六届ACM省赛(外星人的供给站)
题目地址:http://acm.nyist.net/JudgeOnline/problem.php?pid=710思路:没判断出来,先贴一段代码#include #include #include #include #include #include #include #include #include #include #include const int inf原创 2016-03-01 15:20:58 · 655 阅读 · 0 评论 -
HDU 5562 Clarke and food(模拟,看起来像背包)
题目地址:点击打开链接题意:给你一个背包容量为V,然后给你n种物品,每种物品一个容量,求背包最多能放几种物品思路:比赛的时候乍一看像背包,但是这背包容量也太大了吧,其实是贪心,不是求背包能放的最大体积,是求背包能放的最大个数,贪心一下就行AC代码:#include #include #include #include #include #include #include原创 2015-11-15 16:12:46 · 569 阅读 · 0 评论 -
HDU 4310 Hero
题目地址:点击打开链接思路:巧妙之处是用乘法表示了除法的比较关系,虽然用int类型也能过,但最好用__int64类型AC代码:#include #includeusing namespace std;struct ghost{ int hp; int dp;}a[25];bool cmp(ghost a,ghost b){ if(a.dp *原创 2015-07-22 16:23:02 · 318 阅读 · 0 评论 -
HDU 1069 Monkey and Banana
题目地址:点击打开链接思路:先把x排序,只能对x,y种一个变量排序,且必须对一个变量先排序,然后再保证x,y都符合要求的情况下,对高度进行DPAC代码:#include #include#include#includeusing namespace std;struct blocks{ int x,y,z;}kind[200];int num,dp[200原创 2015-08-01 11:26:05 · 351 阅读 · 0 评论 -
HDU 1009 FatMouse' Trade
题目地址:点击打开链接思路:贪心AC代码:#include#include#includeusing namespace std;struct Mouse{ double a; double b; double c;};bool comp(const Mouse &d1,const Mouse &d2){ return d1.c>d2.c;}int main原创 2015-07-20 21:11:34 · 287 阅读 · 0 评论 -
HDU 2037 今年暑假不AC
题目地址:点击打开链接思路:贪心,选时间结束早的AC代码:#include #includeusing namespace std;struct TV{ int start; int end;}a[120];int cmp(const void *_a,const void *_b){ struct TV *a = (TV*)_a; s原创 2015-07-21 09:17:02 · 310 阅读 · 0 评论 -
HDU 1789 Doing Homework again
题目地址:点击打开链接思路:挺好的一题,思路错了2次,刚开始先按时间排序,再按分值排序,结果错了,这样会造成分值高但在后面的没写,分值低但在前面的写了,后来改成先按分值排序,再按时间排序,还是错了,原来先按分值排序,再按时间排序,而且还有保证尽量在截止时间附近写原创 2015-07-21 14:03:28 · 354 阅读 · 0 评论 -
HDU 1735 字数统计
题目地址:点击打开链接思路:M的值大于20题目说错, b数组开小就会运行错误,开大点,还有就是尽量用scanf(),printf()输入输出,跑出来的时间有点长啊AC代码:#include #includeusing namespace std;int a[10010][110],b[25000];bool cmp(int a,int b){ return a >原创 2015-07-20 20:59:31 · 381 阅读 · 0 评论 -
HDU 1051 Wooden Sticks
题目地址:点击打开链接思路:贪心+动归AC代码:#include#includeusing namespace std;struct wood{ int head; int tail; int flag;}a[5010];int cmp(struct wood x,struct wood y){ if(x.head != y.head) return x.he原创 2015-07-27 12:14:07 · 318 阅读 · 0 评论