
ACM_贪心
文章平均质量分 67
京城一十三
你在凝视深渊的时候 深渊也在凝视着你
展开
-
hdu5248序列变换(二分+贪心)基础题
题意(中文的直接粘题意吧) 序列变换Problem Description给定序列A={A1,A2,...,An}, 要求改变序列A中的某些元素,形成一个严格单调的序列B(严格单调的定义为:Bi我们原创 2015-06-04 16:11:33 · 1322 阅读 · 0 评论 -
hdu4038贪心(最快上升倍率,好题)
题意: 给你n个数,然后有两种操作 1.给其中的一个数+1,2.在序列里面增加一个1,然后给你一个m,表示进行了m次操作,最后问你操作之后所有数乘积最大是多少?思路: 徒弟给我的一个题目,感觉不错,这个题目细节比较多,至于难度,感觉还行,值得做一做,大体思路就是模拟,有点贪心的意思,首先我们要看看负数的个数,如果是奇数个,那么要把其中的一个绝对值最小的负数,也原创 2015-05-04 22:39:30 · 634 阅读 · 0 评论 -
POJ3687拓扑排序+贪心
题意: 给你n个求,他们的重量是1-n(并不是说1号求的重量是1...),然后给你m组关系a,b,表示a的重量小于b的重量,然后让你输出满足要求的前提下每个球的重量,要求字典序最小。思路: 很容易想到这个可以用拓扑排序(其实如果没有字典序那个要求的话查分约束也行),还有就是这个里面的字典序最小不是说拓扑排序的字典序最小,这个要整清楚,如果是求拓扑排序的序原创 2015-04-05 15:33:10 · 526 阅读 · 0 评论 -
POJ3614奶牛晒阳光DINIC或者贪心
题意: n个区间,m种点,每种点有ci个,如果一个点的范围在一个区间上,那么就可以消耗掉一个区间,问最多可以消耗多少个区间,就是这n个区间中,有多少个可能被抵消掉。思路: 方法不唯一,首先可以用贪心来做,看到网上说的都是优先队列的解法,我说下我的想法,我是直接sort排序后暴力(其实根本达不到n*m*l的时间复杂度),我先把所有老牛也就是区间按照上端点(**原创 2015-04-05 15:31:29 · 823 阅读 · 0 评论 -
POJ3122贪心或者二分(分蛋糕)
题意: m+1个人来分n个蛋糕,每个人分到的蛋糕数必须一样而且还必须是同一个蛋糕上的,问每个人最多分多少蛋糕?思路: 能想到的方法有两种,一个是直接贪心,另一个就是二分,这个题目之前做过,用的是二分,但不知道为啥这次看到的时候,没感觉。也没去想二分,直接自己想了一个贪心的策略然后就AC了,先说贪心,贪心我们可以一个一个人的去分,每个人来的时候就在当前状态原创 2015-04-05 15:27:52 · 1316 阅读 · 0 评论 -
POJ3040给奶牛发工资
题意: 有n种硬币,每种硬币有mi个,然后让你给奶牛发工资,每周发至少c元(就是不找零钱的意思)然后问你能发几周?(硬币之间都是倍数关系)思路: 这个题目做了两天,丢脸,看完这个题目我的第一反应就是从大的发起,就是先花面值大的,能大的就一直大的,只要不超过c,然后再能小的就一直小的,补全没超过但是又不够那一部分,这个想法一开始就是对的,只不过我写的时候是排序原创 2015-04-05 15:25:03 · 1365 阅读 · 0 评论 -
POJ2709 染料贪心
题意: 要搭配出来n种颜料,每种颜料要用mi升,除了这n种颜色还有一个合成灰色的毫升数,灰色是由三种不同的颜色合成的,三种m m m 的不同颜色能合成m升灰色,然后问你满足要求至少要多少盒颜色,这个1盒的定义是:一盒里面有n种颜色,每种50ml.思路: 先把所有的这n中颜色的最小需要合数求出来,然后在处理灰色,处理灰色的时候可以1升1升的合成,每次去当前原创 2015-04-05 15:22:50 · 1342 阅读 · 0 评论 -
POJ1328贪心放雷达
题意: 有一个二维坐标,y>0是海,y思路: 贪心去做就行了,其实题目不难但是这个题目过的并不怎么顺利,哎!,一开始我的想法是按照x排序,然后从左往右一个一个放置雷达,第一个放在第一个点相切的右侧,....结果果断wa了,然后就又想到可以求出每个城市的可放置区间,然后去贪心,还是wa了,原因是排序的时候还是按照x从小到大排序的,后来看了讨论区一眼,才把原创 2015-04-05 15:17:17 · 601 阅读 · 0 评论 -
POJ1042 贪心钓鱼
题意: 你有H小时(H*12个单位)时间去用,有n个鱼池在一条直线上,一开始你在1的位置,可以选择在某些鱼池上钓鱼,但是如果持续在一个鱼池上钓鱼钓鱼速度回成线性减少,初始每个时间单位钓fi条,然后下一个时间单位钓fi-di条,再下一个fi-di-di条,每个鱼池和他下一个鱼池的距离是ti个时间单位,最后你可以听到任意一个鱼池上,问最多钓多少条鱼,然后输出在个鱼池的停留时间和最多的鱼数原创 2015-04-05 15:14:31 · 679 阅读 · 0 评论 -
POJ2431贪心(最少加油次数)
题意: 给一个终点,然后给你一个卡车距离终点的距离,还有其他个加油站距离终点的距离,然后每走一个单位距离要花费一个单位油,卡车的邮箱是无限大的,而每个加油站的油量是有限的,整个路径是一个线性的,然后求到达终点的最少加油次数。思路: 想了将近20分钟才想出来,哎! 我的方法是贪心,大体思路是这样,先给加油站排序,然后从离自己最紧的开始枚举,如果当前能到达该原创 2015-03-16 16:46:40 · 2155 阅读 · 0 评论 -
POJ1018贪心(多路归并的想法)
题意: 有n个服务器,每个服务器都要安装网线(必须也只能安装一个),然后每个服务器都有mi种选择网线的方式,每种方式两个参数,一个是速度b,另一个是价钱p,然后让你找到一个最大的比值 minb/sump,就是所有的选择中最小的那个速度,必上话的钱的总和。思路: 这个题目按照讨论组里面的说法估计做法很多,不管了,说下我自己的做法吧,我的做法有点像操作系统里面那原创 2015-03-16 16:36:07 · 716 阅读 · 0 评论 -
POJ2349二分+并查集,类似最小树的贪心
题意: 给你n个点,你的任务是构建一颗通讯树,然后给你一个s表示可以选出来s个点两两通讯不花钱,就是费用是0,其他的费用就是两点的距离,有个要求就是其他的费用中最大的那个最小。思路: 方法比较多,题目也不难,但是容易有一个误区就是很多人认为这个题目是在求最小生成树,我不是这么想的(虽然这个题目可以用最小树的算法过,但是我的感觉是他和最小树是相同的代码,不同的思原创 2015-02-06 16:58:02 · 460 阅读 · 0 评论 -
POJ1456贪心(set或者并查集区间合并)
题意: 给你n商品,每个商品有自己的价值还有保质期,一天最多只能卖出去一个商品,问最大收益是多少?思路: 比较好想的贪心,思路是这样,每一次我们肯定拿价值最大的,至于在那天拿当然是尽可能的往后拖了,因为可以把前面的时间留给一些快过期的用,这种贪心策略很容易想到,对于实现的时候我尝试了两种方法,首先把商品按照价格从大到小排序,一个是我以前常用的set容器,他可原创 2015-02-06 16:40:28 · 801 阅读 · 0 评论 -
hdu4932 小贪心
题意: 给了一些处在x轴上的点,要求我们用长度相等的线段覆盖所有点,线段和线段之间不能重叠,问线段最长可以使多长。思路: 一开始一直在想二分,哎!感觉这个题目很容易就往二分上去想,但是其实仔细想想并不是满足单调性的(对于我的方法是不满足单调性的,别的方法有可能可以),一开始想的是不能出现连续的两个不满足,这里的满足就是可以有线段,各种w原创 2014-08-11 13:11:50 · 655 阅读 · 0 评论 -
hdu4912 LCA+贪心
题意: 给你一棵树和m条边,问你在这些边里面最多能够挑出多少条边,使得这些边之间不能相互交叉。思路: lca+贪心,首先对于给的每个条边,我们用lca求出他们的公共节点,然后在公共节点的深度排序,排序之后我们先从最深的开始,每次判断当前的这条边的两点是否用过,如果没用过,那么就把以当前两点的公共点为树根的子树全部标记上,然后答案+1,就这样一直遍历到最后就行了原创 2014-08-06 15:55:28 · 634 阅读 · 0 评论 -
hdu4882 水贪心
题意: 给你n个任务,每个任务有两个权值,t[i],b[i],前面的是完成任务所需时间,后面的那个是个参数,每个任务完成的代价是完成当前任务总时间(之前的+现在的)sumt * b[i],问你完成所有任务的总花费最小是多少。思路: 水贪心吧,不给证明了,没啥意思,就想象一下,那个东西价值贵就先干那个就行了价值等于 b[i] / t[i],价值原创 2014-07-25 11:47:02 · 491 阅读 · 0 评论 -
hdu4864 贪心
给你n太机器,m个任务,每个任务和机器都有两个权值x,y,每个机器只能被一个任务使用,条件是机器的两个权值分别比任务的大于等于,每个任务获得的价值是x*500+y*2,问你最多能完成多少任务,在完成任务最多的条件下,最多能获得多少价值。思路: 一开始没想到是贪心,我读完题第一感觉就是费用流啊!后来一看数据,费用流不行(如果数据小点费用流果断能原创 2014-07-24 11:11:59 · 557 阅读 · 0 评论 -
hdu4544 优先队列(小贪心)
题意: 湫湫系列故事——消灭兔子Time Limit: 3000/1000 MS (Java/Others) Memory Limit: 65535/32768 K (Java/Others)Total Submission(s): 1539 Accepted Submission(s): 525Problem Description 湫湫减肥 越减越肥原创 2014-07-19 16:33:34 · 791 阅读 · 0 评论 -
hdu4825 字典树 + 贪心
题意: 给你n个数,然后给你m组询问,每组询问给你一个数,输出n个数中与该数亦或的最大的那个数,输出的是被亦或的那个数,不是亦或后的结果。思路: 我用的是字典树+贪心,首先我们可以把前n个数拆成2进制,然后补全前导0,我是补成了34位,然后把他存在字典树中,对于每个询问,把他变成二进制,然后补全前导0,然后在把每一位都取反,在字典树上查找,查找的时候原创 2014-06-23 17:02:45 · 1274 阅读 · 0 评论 -
hdu4450 不错的贪心
题意:卡片游戏Time Limit: 3000/1000 MS (Java/Others) Memory Limit: 65535/32768 K (Java/Others)Total Submission(s): 1088 Accepted Submission(s): 341Problem Description 小明最近宅在家里无聊,于是他发明了原创 2014-04-16 20:41:22 · 650 阅读 · 0 评论 -
hdu4268贪心
题意: 两个人有一些图片,矩形的,问a最多能够覆盖b多少张图片..思路: 明显是贪心,但是有一点很疑惑,如果以别人为主,每次都用自己最小的切能覆盖敌人的方法就wa,而以自己为主,去覆盖自己可能覆盖的最大就ac了,证明不了,总感觉这东西在孙子兵法里会有,,解题过程就是先吧两个人的所有卡片放一起以 长 小的在前面,如果 长 相等 id 大的(被覆盖那个)在前原创 2014-03-26 10:49:21 · 518 阅读 · 0 评论 -
hdu4118
题意: 给你一颗无向带权树,每个定点上有一个人,问所有定点都不在自己位置上的最长路径总和是多少.. 思路: 其实很简单,贪心的想下,既然要求全局最大,那么对于每一条边用的次数越多越好,对于每一条边 ans += 他的权值*min(他左边点的个数,有边点的个数)//为了保证每一个都在边的另一面找到位置,最后输出ans * 2,因为是双向的,a ->b 那原创 2014-03-16 11:07:32 · 729 阅读 · 0 评论 -
hdu3177 贪心
题意: " 蝎子来来"往自己的洞里搬运东西,每件物品有自己的体积,和搬运时所需要的体积,问他是否能够把所有的东西全搬进去.果断贪心,以 搬运所需体积减去实际体积的差从大到小排序,然后按这个顺序搬,能搬完就ok,都则就完不成,之所以这么排序,我个人认为 搬运体积减去实际体积越大的就证明他"浪费的空间" 越大,对于这种浪费空间大不好处理的物品肯定先搬,随意这么排序.#i原创 2014-02-25 21:13:01 · 758 阅读 · 0 评论