
贪心
sumi
无冥冥之志者无昭昭之明 无惛惛之事者无赫赫之功!
有问题欢迎大家联系我,扣扣2513822561
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
1.2Mixing Milk
很水的贪心/*ID:wconveyPROG:milkLANG:C++*/#include#includeusing namespace std;struct node{ int p,a;}array[5100];int cmp(const void *x,const void *y){if(((struct nod原创 2012-01-15 15:39:30 · 367 阅读 · 0 评论 -
贪心总结
经典贪心题:1)旅行家的预算2)节点网络3)求最大得分4)删数问题5)取数游戏6)独木舟7)最大整数8)Radar转换模型—〉贪心求解先算出每个岛在哪个区间范围内建立雷达站能够覆盖到这个岛,按左端点快排。第一个雷达建立在区间的右端,而后一次判断每个区间的左端点,如果在最新建立的雷达右面,那么肯定需要一个雷达,而转载 2012-08-08 20:44:09 · 1007 阅读 · 0 评论 -
hdu 2037 今年暑假不AC(贪心)
题目分析:先将事情的起始时间和截止时间排序,把相互排斥的事情划到一个集合里。样例:0 1 2 ; 3 3; 4 5 6 8; 10; 15 157 3 9 ; 4 8; 14 10 12 18; 15; 19 20 ^原创 2012-05-16 17:21:50 · 573 阅读 · 0 评论 -
poj3863 Business Center 贪心
题目分析:设上升次数w为x ,则x*u-(n-x)*d>=0 解得:x>=n*d/(u+d);当能够整除时:在最终停在u+d,不过能够时停在(n*d/(u+d)+1)*(u+d)-n*d;#include#include#includeusing namespace std;int main(){ int n,m; while(scanf("%d %d",&n,&m)原创 2012-05-30 07:49:14 · 1090 阅读 · 1 评论 -
hdu 3177 Crixalis's Equipment(贪心)
题目分析:这个如何贪心,很难想!!!有忍不住参照别人的思想了!!!!!但是我感觉我下面的哪个WA一直的思想也对不知道为啥过不了!!!思想:如果是两件的话:a1 , b1和a2 ,b2.... 瞬时所占体积的最大值为,a1+b2 或者 b1+a2,肯定选择较小的哪个来放...在推广的n个/*****贪心***/#include#include#includeusing原创 2012-05-08 10:53:32 · 799 阅读 · 0 评论 -
hdu 1789 Doing Homework again(贪心)
题目:fwj 牛,给我讲的,贪心过。我还以为是DP,想了很长时间啊... 贪心:先按要扣的分数,从大到小排序,要扣的分数想同,按截止日期,从大到小排序;在开一个数组a[ i]代表第i 天是否被占用,如果被占用,赋值为1;然后从做导游扫描一遍,如果a[arr[i].t]==0,则进行下一轮扫描,如没有时间安排给arr[i].w,则ans+=arr[i].w...#include原创 2012-04-22 15:08:02 · 545 阅读 · 0 评论 -
hdu 1052 Tian Ji -- The Horse Racing(很好的贪心)
题目分析:这题的题意就是求怎么让田忌赢最多,可以赢负的。算法是先将两个都排序,然后按1、田忌的快马比齐王的快,直接比掉。2、若快马没有快,拿田忌最慢的和齐王最慢的比较,若快直接比掉。3、若慢马比齐王慢,就拿田忌最慢的和齐王最快的比较。按这个算法就可以啦!不过有一组很好的测试数据。41 2 4 52 3 3 4注意:1.很好的贪心题原创 2012-05-07 22:26:46 · 1741 阅读 · 1 评论 -
hdu 4221Greedy?
//在C++,用long long 竟然WA了,用__int64才能过,why?//很水的贪心,题目:有n个任务,每个任务有一个花费时间Ci,和截止时间Di,如果超过截止时间完成就要相应的处罚,为T-Di,T为任务Di的完成时间,求最小的最大的处罚,#include#include#includeusing namespace std;struct node {原创 2012-04-15 20:40:10 · 815 阅读 · 0 评论 -
poj3636 Nested Dolls
分析:偏序关系。如果采用poj1065的方法超时,所以用一个数组D[2100],吧每个偏序链的末端 保存起来,不断更新。#include#include#includeusing namespace std;struct node{int w,h;}doll[21000],D[2100];int cmp(node x,node y){if(x.w!=原创 2012-03-14 13:21:00 · 816 阅读 · 0 评论 -
poj 1065Wooden Sticks (简单的贪心)
#include#include#includeusing namespace std;struct node{int l,w;bool flag;}a[5100];/*int cmp(node x,node y){if(x.l!=y.l)return x.l-y.l;else if(x.l==y.l)return x.w-y.w;e原创 2012-03-13 22:05:37 · 440 阅读 · 0 评论 -
1328 poj Radar Installation
/*思路一:先考虑y=d的情况,吧涉及到的点标记,然后再从左到右扫描,让尽可能多的点在一个圆内,复杂度O(n^2)**********有错误呀,昨晚检查了一晚上还没检查出开呀******!!!!,据说渣哥去年都AC了,膜拜呀,要被他鄙视了*/#include#include#include#includeusing nam原创 2012-03-02 16:31:15 · 476 阅读 · 0 评论 -
poj2586 Y2K Accounting Bug
坑爹的题目呀 ,死活读不懂!!!参照别人的解说,才搞明白 题意,一个公司,每个月要么亏损d,要么盈利s,每年连续五个月统计一次,每年统计8次,某年因为事故数据丢失,只知道统计的8次都是亏损,但是不知道几月亏损,亏损多少。给你s和d,如果年终盈利,求盈利的最大数,如果亏损,输出Deficit。分析:分5中情况讨论:(5-i)*s-i*di=1: SSSSDSSSSDSS a原创 2012-02-29 12:54:17 · 425 阅读 · 0 评论 -
九度oj 1504:把数组排成最小的数 (贪心)
输入一个正整数数组,把数组里所有数字拼接起来排成一个数,打印能拼接出的所有数字中最小的一个。例如输入数组{3,32,321},则打印出这三个数字能排成的最小数字为321323。 输入: 输入可能包含多个测试样例。对于每个测试案例,输入的第一行为一个整数m (1输入的第二行包括m个正整数,其中每个正整数不超过10000000(10^7)。注意这几组测试数据:原创 2013-06-27 00:12:52 · 957 阅读 · 0 评论