贪心
浪子小黄人
这个作者很懒,什么都没留下…
展开
-
poj 1827 A Bunch Of Monsters 贪心
A Bunch Of Monsters Time Limit: 2000MS Memory Limit: 30000K Total Submissions: 944 Accepted: 357 Description Background Jim is a brave explorer. One day, he set out原创 2014-08-08 16:47:16 · 722 阅读 · 0 评论 -
Delicious Apples (hdu 5303 贪心+枚举)
题意:在一个圆上有n个苹果树,告诉苹果树的位置和每棵树上的苹果个数,还有一个容量为K的篮子,用篮子去摘苹果,起点在位置0,反复去摘直到把所有的苹果都摘回到0,问走的最短距离为多少。 思路:首先将圆一分为二,在圆形两侧能拿满的话肯定就是只走半边再回去,这样比走整圈划算,另外还要想到最后两边都不足K个了,这个时候最多需要走一个整圈,我们不知道这个整圈拿了哪几个苹果,那么就枚举K个。比赛时只是想到了贪心,最后那一部分没有枚举,另外这里的苹果进行了离散化,因为苹果总数只有1e5,大大简化了代码,自己当时写的太冗余=原创 2015-07-24 10:47:21 · 2749 阅读 · 0 评论 -
Evil Straw Warts Live (Uva10716 回文串+贪心)
题意:判断一个串能否通过临近的两个字符多次交换变成回文串,不能输出“Impossible”,能的话输出最少的交换次数。 思路:预处理每个字母出现的次数,若有>=2个字母出现的次数是奇数则不可能。然后从两边向中间贪心,每次先固定前端,然后从后端向中间逐步找,直到找到第一个与前端相同字母时break,将找到的字母向后移,加上移动的次数(不知道为什么可以这么做,网上说这样做 和 每次找最优 最后结果是一样的,暂时还没有证明出来)。若碰到个数为奇数的字母时,将它往后顺移,最后它就会在中央位置了。原创 2015-03-31 12:38:08 · 781 阅读 · 0 评论 -
Stock (zoj 2921 贪心经典)
题意:有n张股票,给出每天股票的买进数量,当天的股票价格和当天最大抛出量,第i天得到的股票当天可以不抛,可以留到以后抛。问这n天最多能卖多少钱? 思路:贪心,从后往前贪心,最后一天的股票当然只能在最后一天卖出,第i天的可以在第i天及以后卖出,那么就可以维护一个优先队列来存放第i天及以后的天数中抛出量不为零的日期(价格高的优先),那抛出第i天时先从优先队列中取出价格最高的。原创 2015-03-10 10:17:41 · 894 阅读 · 0 评论 -
Allowance (poj 3040 贪心)
题意:n种硬币,给出每种硬币的面值v和张数b,用这些钱每天发工资,至少发c,问能连续发多少天。注意钱的面值之间是可以相互整除的。 思路:可以贪心(因为面值之间是相互整除的),面值比c大的一天发一张,比c小的就优先选面值大的,从大到小贪一遍,这个过程中要保证所选硬币面值之和m要小于等于c,若m小于c,则从小往大优先选一张能使m大于等于c,这样是最优的。(开始没用need,1000ms险过。。。后来看到网上用的need,0ms。。。太菜)原创 2015-03-07 11:14:57 · 1638 阅读 · 1 评论 -
Packets (poj 1017 贪心)
题意:一个工厂制造的产品形状都是长方体盒子,它们的高度都是 h,长和宽都相等,一共有六个型号,分别为1*1, 2*2, 3*3, 4*4, 5*5, 6*6。 这些产品通常使用一个 6*6*h 的长方体箱子包装然后邮寄给客户。求需要的盒子的最少数量。 贪心,直接模拟吧。。。把情况都考虑到,写的蛋疼。。。原创 2015-03-06 16:51:54 · 768 阅读 · 0 评论 -
Sunscreen (poj 3614 贪心+优先队列)
题意:有c头牛晒太阳,每头牛都有一个能承受辐射的范围(min~max),现在有 l 种防晒霜,每种防晒霜都能将辐射值固定在spf,每种防晒霜都有一定的数量num。每头牛用最多一种防晒霜,问能满足多少斗牛。 思路:贪心,首先防晒霜按照spf从小到大排序,牛也按照能承受的最小值从小到大排序。然后对于每种防晒霜 将牛的最小值 小于等于 该种防晒霜spf值的牛入队列(只如它承受范围的最大值),然后较小者先出队列。原创 2015-03-19 23:01:43 · 1946 阅读 · 0 评论 -
Cleaning Shifts (poj 2376 贪心)
题意:给出区间[1,N]和N个小区间,用小区间去覆盖[1,N],问能否覆盖完全,若不能则输出-1,否则输出所需要的小区间的最少数目。原创 2015-03-03 21:55:28 · 781 阅读 · 0 评论 -
Stall Reservations (poj 3190 贪心)
题意:给出每个奶牛挤奶的时间段,一个机器一次只能对一头奶牛工作,问至少需要多少台机器,并输出每头奶牛使用的机器编号。 思路:先按照每头牛的开始时间从小到大排序,维护一个优先队列,n头牛依次入队,时间结束早的先出队列,比较最早出来的牛的结束时间和当前准备入队的牛的开始时间,若前者小于后者,则当前的牛可以用前面空出来的机器,否者要添加一台新机器。原创 2015-03-04 12:29:36 · 1121 阅读 · 0 评论 -
Codeforces Round #132 (Div. 2) D. Hot Days
题意:n个区域,m个孩子坐车穿过这些区域,每个区域的温度都不一样,t,T,x,cost分别表示该地区的温度t,车内最大温度限制T,车内温度若超过T对每个孩子的赔偿x,坐车的费用cost,求最小的费用。 思路:1. 当 m <= (T-t) 时 最后的费用都为 : cost 2.m>(T-t) 时 有两种选择 一个是尽量做在一辆车上(对于补助费比较少时) sum=m*x; 另一个是 尽量多做车,但是要保证车都坐满(刚好达到不要补助费的时候)。 sum=cost*( m%(T-t)==0? m/(T-t)+1原创 2014-11-03 21:36:19 · 819 阅读 · 0 评论 -
Paper Work Cf250A
Paper Work Time Limit:2000MS Memory Limit:262144KB 64bit IO Format:%I64d & %I64u Submit Status Practice CodeForces 250A Description Polycarpus has been working in the analyti原创 2014-11-02 23:15:43 · 997 阅读 · 0 评论 -
hdu 1789 Ding Homework again 贪心
Doing Homework again Time Limit: 1000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others) Total Submission(s): 6522 Accepted Submission(s): 3888 Problem Description Ignatius原创 2014-08-09 23:15:43 · 659 阅读 · 0 评论 -
C. Developing Skills (CF Round #322 (Div.2) 贪心)
题意:给出n个数,还有一个数k,用k去补这n个数,使得ai/10之和最大。 思路:贪心。先把n个数按照x值从小到大排序,其中x等于 把ai变为10的倍数所需要要添加的最小值;然后用k尽量去把每个数按照x值填为10的倍数,如果k还有剩余尽量填就行了。具体看代码。原创 2015-09-28 23:00:22 · 451 阅读 · 0 评论