
贪心
v5zsq
新的一天,新的不会
展开
-
POJ 1083 && HDU 1050 Moving Tables(贪心)
Description 给出一些区间,让你每次从中选取一些互不相交的区间,让选择次数最少 Input T组用例,每组用例第一行为区间个数N(NOutput 对每组用例,输出最少次数 Sample Input 3 4 10 20 30 40 50 60 70 80 2 1 3 2 200 3 10 100 20 80 30 50 Sa原创 2015-08-23 13:56:30 · 545 阅读 · 0 评论 -
POJ 1328 Radar Installation(贪心)
Description 将一条海岸线看成X轴,X轴上面是大海,海上有若干岛屿,给出雷达的覆盖半径和岛屿的位置,要求在海岸线上建雷达,在雷达能够覆盖全部岛屿情况下,求雷达的最少使用量 Input 多组用例,每组用例第一行为两个整数n,d(1Output 对于每组用例,如果雷达可以覆盖全部岛屿则输出雷达最少使用量,否则输出-1 Sample Input 3 2 1 2 -3 1 2原创 2015-06-21 19:18:48 · 605 阅读 · 0 评论 -
POJ 1716 Integer Intervals(贪心)
Description 给出数轴上的n个区间,每个区间都是连续的int区间。现在要在数轴上任意取一堆元素,构成一个元素集合V,要求每个区间和元素集合V的交集至少有两个不同的元素,求集合V的最小元素个数。 Input 第一行为区间个数n 后面n行每行两个整数为对应区间的左右端点 Output 满足条件的集合V所含元素最小个数 Sample Input 4 3 6 2 4 0 2原创 2015-07-06 14:58:53 · 538 阅读 · 0 评论 -
POJ 1727 Advanced Causal Measurements (ACM)(二分+贪心)
Description 有n个事件,每个事件用其发生的位置s1和时间t1来描述,而每一个事件都有其因事件,若一个事件位置s2和时间t2满足|t2-t1|>=|x2-x1|,则该事件成为原事件的因事件。现给出m个因事件,对于这m个”因事件”点集,可能是所有点的因事件,也可能是某个或某几个点的因事件。求全部因事件点中时间最早的那个点的时间最大值 Input 多组用例,第一行为用例组数T,对于每组原创 2015-07-06 15:40:52 · 713 阅读 · 0 评论 -
POJ 1065 && HDU 1051 Wooden Sticks(贪心)
Description 有一些木材和一台机器。机器每次加工一根木材需要的时间是1,但是当加工木材的长度和宽度都小于等于前一根木材的时候,不需要时间。求最少需要多少时间加工完所有的木材 Input 第一行为数据组数t,每组用例第一行为木材数量n,然后是每根木材的长度和宽度 Output 对于每组用例,输出最短加工时间 Sample Input 3 5 4 9 5 2 2 1 3原创 2015-07-07 15:19:47 · 538 阅读 · 0 评论 -
POJ 2287 && HDU 1052 Tian Ji -- The Horse Racing(贪心)
Description 两人一人n匹马,赢一局赚200,输一局输200,平局不输不赢,问第一个人怎么样安排赛马顺序才能赢的最多 Input 多组输入,每组用例第一行为马的数量n( nOutput 对于每组用例,输出第一个人最大赢钱数 Sample Input 3 92 83 71 95 87 74 2 20 20 20 20 2 20 19 22 18 0 Sam原创 2015-08-26 16:13:57 · 528 阅读 · 0 评论 -
POJ 2376 Cleaning Shifts(贪心)
Description 有一些奶牛,每只奶牛负责一个时间段。问覆盖完全部的时间段最少需要多少只奶牛。若不能全部覆盖,输出-1 Input 第一行为两个整数N和T表示奶牛数量和总时间,之后N行每行两个整数表示该头奶牛负责的时间段 Output 若能覆盖完全部的时间段输出最少奶牛数量,若不能全部覆盖,输出-1 Sample Input 3 10 1 7 3 6 6 10 Samp原创 2015-08-27 09:40:40 · 1922 阅读 · 1 评论 -
POJ 2586 Y2K Accounting Bug(贪心)
Description 有一个公司由于某个病毒使公司赢亏数据丢失,但该公司每月的赢亏是一个定数,要么一个月赢利s,要么一月亏d。现在ACM只知道该公司每五个月有一个赢亏报表,而且每次报表赢利情况都为亏。在一年中这样的报表总共有8次(1到5,2到6,…,8到12),现在要编一个程序确定当赢s和亏d给出,并满足每张报表为亏的情况下,全年公司最高可赢利多少,若存在,则输出最高赢利,若不存在,输出”De原创 2015-07-11 12:16:37 · 468 阅读 · 0 评论 -
POJ 2976 Dropping tests(贪心+二分)
Description n场考试中分别答对ai题,总题数分别为bi,允许去掉k场考试,求能达到的最高准确率 Input 多组用例,每组用例第一行为两个整数n和k分别表示考试次数和可去考试次数,第二行为每次考试答对的题数,第三行为每次考试的总题数,以n=k=0结束输入 Output 对于每组用例,输出去掉k次考试后的最高准确率 Sample Input 3 1 5 0 2 5 1原创 2015-07-11 20:00:55 · 818 阅读 · 0 评论 -
POJ 3617 Best Cow Line(贪心)
Description 给定长度为n的字符串S,要构造一个长度为n的字符串T。起初,T是空串,随后反复进行下列任意操作: 1、从S的头部删除一个字符,加到T的尾部 2、从S的尾部删除一个字符,加到T的尾部 目标是构造字典序最小的字符串T Input 第一行为字符串长度n,之后n行每行一个字符,字符串只包含大写字母 Output 输出字典序最小的字符串T,输出时一行只能输出80个字符原创 2015-08-31 08:29:07 · 1647 阅读 · 0 评论 -
POJ 3623 Best Cow Line, Gold(贪心)
Description 给定长度为n的字符串S,要构造一个长度为n的字符串T。起初,T是空串,随后反复进行下列任意操作: 1、从S的头部删除一个字符,加到T的尾部 2、从S的尾部删除一个字符,加到T的尾部 目标是构造字典序最小的字符串T (1Input 第一行为字符串长度n,之后n行每行一个字符,字符串只包含大写字母 Output 输出字典序最小的字符串T,输出时一行原创 2015-08-31 08:29:40 · 1136 阅读 · 0 评论 -
CodeForces 538 B.Quasi Binary(贪心)
Description 给出一个整数n,要求用m最少个数的只由0和1组成的数的和表示n Input 一个整数n Output 输出满足条件的数的个数m以及这m个数 Sample Input 9 Sample Output 1 1 1 1 1 1 1 1 1 Solution 贪心,尽量多用1,m就是n的各位数中的最大值 Code#include<cstdio&...原创 2015-09-02 08:59:23 · 910 阅读 · 0 评论 -
CodeForces 538 C.Tourist's Notes(贪心)
Description 一个旅行者在外旅行n天,第i天所在地方的海拔为hi,相邻两天的海拔之差不超过1。给出部分天数的海拔,问这个人在这n天中,所到地方的最高海拔是多少?如果根据给出的数据不符合题意描述,即出现相邻两天的海拔之差超过1,输出“IMPOSSIBLE” Input 第一行两个整数n和m分别表示旅行者旅行天数和给出海拔的天数,之后m行每行两个整数d和h表示第d天海拔为h Outp...原创 2015-07-25 16:19:48 · 687 阅读 · 0 评论 -
HDU 5353 Average(贪心)
Description 有n个人组成一个环,相邻的两个人能互相给糖果,对于相邻的两个人而言,只能进行一次操作,要么x给y一个糖果,要么y给x一个糖果,要么不动,问能否经过一定的操作使得每个人的糖果数一样,并输出步骤 Input 第一行为用例组数T,每组用例第一行为人数n,第二行为n个整数表示这n个人手中的糖果数 Output 对于每组用例,如果存在一种方案可以使得所有人手中的糖果数相同则原创 2015-08-31 12:43:37 · 721 阅读 · 0 评论 -
HDU 1045 Fire Net(贪心)
Description 给定一个最大4*4的方形地图,里面有墙(X)和空地(.)。在每个空地上可以放大炮,但两个大炮如果在同一行或同一列并且之间没有墙阻隔的话,会互相攻击,所以不能同时存在,问最多能放多少个大炮 Input 多组用例,每组用例第一行为方形地图边长n,之后一个n*n矩阵表示该地图,以n=0结束输入 Output 对于每组用例,输出该地图最多可以放置的大炮数 Sample原创 2015-09-05 23:09:18 · 829 阅读 · 0 评论 -
HDU 2021 发工资咯:)(贪心)
Description 作为杭电的老师,最盼望的日子就是每月的8号了,因为这一天是发工资的日子,养家糊口就靠它了,呵呵,但是对于学校财务处的工作人员来说,这一天则是很忙碌的一天,财务处的小胡老师最近就在考虑一个问题:如果每个老师的工资额都知道,最少需要准备多少张人民币,才能在给每位老师发工资的时候都不用老师找零呢?这里假设老师的工资都是正整数,单位元,人民币一共有100元、50元、10元、5元、原创 2015-09-07 08:35:25 · 6978 阅读 · 0 评论 -
HDU 2037 今年暑假不AC(贪心)
Description 给出多个节目的开始时间和结束时间,问最多可以看多少电视节目 Input 输入数据包含多个测试实例,每个测试实例的第一行只有一个整数n(nOutput 对于每个测试实例,输出能完整看到的电视节目的个数,每个测试实例的输出占一行 Sample Input 12 1 3 3 4 0 7 3 8 15 19 15 20 10 15 8 18 6 12原创 2015-09-08 08:34:53 · 751 阅读 · 0 评论 -
CodeForces 588 A.Duff and Meat(贪心)
Description 达夫一天要吃重量为ai的肉,每天的肉价为pi,肉保质期无限,也就是说可以提前买后几天吃,先给出n天的ai和pi,问达夫这n天买肉最少花多少钱 Input 第一行为一整数n表示天数,之后n行每行两个整数ai和pi表示第i天对肉的需求以及当天的肉价 Output 买肉的最少花费 Sample Input 3 1 3 2 2 3 1 Sample Outpu...原创 2015-10-19 14:22:26 · 919 阅读 · 0 评论 -
CodeForces 587 A.Duff and Weight Lifting(贪心)
Description 达夫每天练习举重,教练给了她n个重量值为2^wi哑铃让她举,每次达夫可以举起满足2^a1+2^a2+…+2^ak=2^x的重量并将这些哑铃扔掉,问达夫最少几次完成教练的任务 Input 第一行为一整数n表示哑铃数,第二行n个整数wi表示第i个哑铃重2^wi Output 输出达夫最少几次能完成任务 Sample Input 5 1 1 2 3 3 Samp...原创 2015-10-19 14:17:48 · 1205 阅读 · 0 评论 -
POJ 3902 The Bad Number(贪心)
Description 给出三个整数n,m,k,要求你需要把m拆成最少的x个数之和,需要满足x不被n整除,每个数不被n整除且不超过k,输出x Input 第一行为一整数T表示用例组数,每组用例占一行包括三个整数n,m和k Output 对于每组用例,输出x,如果不存在满足条件的方案则输出-1 Sample Input 2 3 11 6 2 12 47 Sample Outpu原创 2015-10-04 10:14:52 · 711 阅读 · 0 评论 -
CodeForces 581 C.Developing Skills(贪心)
Description 一个游戏角色掌握n种技能,每种技能熟练度为ai(0<=ai<=100),一个角色的等级取决于sum[ai/10] (1<=i<=n),现在有k个技能点,每个技能点可以增加一个技能的熟练度(ai不超过100),问这个角色的最高等级是多少 Input 第一行为两个整数n和k分别表示技能数和技能点数,第二行n个整数表示这n项技能的熟练度 Outpu...原创 2015-10-09 22:24:33 · 594 阅读 · 0 评论 -
CodeForces 583 B.Robot's Task(贪心)
Description n台电脑,每台电脑有一条信息,一黑客每次黑掉一台电脑需要ai条信息,这个黑客会沿着电脑排成的序列来回走直至黑掉所有电脑,问这个黑客最少需要转弯几次 Input 第一行为一整数n表示电脑数量,第二行n个整数表示黑掉这n台电脑分别需要多少条信息 Output 输出这名黑客黑掉所有电脑最少需要转弯几次 Sample Input 7 0 3 1 0 5 2 6 S...原创 2015-10-10 09:27:36 · 683 阅读 · 0 评论 -
CodeForces 496 E.Distributing Parts(贪心)
Description 有n首曲子,每首曲子的范围为ai~bi。有m个演奏家,每个演奏家的范围为ci~di,并且可以出演次数为ki次。如果ci<= ai<=bi<=di,则说明该曲子可以由演奏家演出。问是否存在合法方案使得所有曲子都能被演奏 Input 第一行为一个整数表示曲子的数量n,之后n行每行两个整数ai和bi表示这首曲子占的时间范围,然后为一整数m表示演奏家人数,之...原创 2015-12-05 15:52:22 · 397 阅读 · 0 评论 -
HDU 1009 FatMouse' Trade(贪心)
Description 一共有n个房子,每个房子里有老鼠喜欢吃的食物,但是每个房间里的食物的价格不一样。老鼠用m元,问m元最多可以卖多少食物,其中每个房间里的食物可以被分割 Input 多组输入,每组用例第一行为两个证书m和n表示老鼠初始钱数和房间数,之后n行每行两个整数get和pay表示老鼠在这个房间得到get单位的食物,就要付pay元,以0 0结束输入 Output 对于每组用例,输原创 2015-08-28 15:09:32 · 786 阅读 · 0 评论 -
CodeForces 557 C.Arthur and Table(贪心)
Description 给出一个桌子,有n个腿,每个腿的长度是l,拆掉这条腿的花费是d,当最长的腿占腿总数大于其他腿的总数,那么合法,问如何才能花费最小到达合法情况 Input 第一行为桌腿数量n,第二行n个整数表示每条桌腿的长度,第三行n个整数表示拆掉每条桌腿的花费 Output 输出达到合法情况的最小花费 Sample Input 6 2 2 1 1 3 3 4 3 5 5 ...原创 2015-07-27 13:45:45 · 700 阅读 · 0 评论 -
CodeForces 496 C.Removing Columns(贪心)
Description 给定n个长为m的字符串,现在要求字符串从上到下遵循字典序,可以通过完整的删除某一列字母来调整,问最少删除多少列能达到使字符串满足字典序的要求(允许两个字符串完全相同,允许把所有列都删光) Input 第一行两个整数n和m表示字符串数和每个字符串的长度,之后n行每行一个长度为m的字符串 Output 输出为使得从上到下字典序非严格递增要删去的最少列数 Sample...原创 2015-12-05 14:53:00 · 689 阅读 · 0 评论 -
POJ 2393 Yogurt factory(贪心)
Description 一个工厂要供应n周的酸奶,已知每升酸奶保存一周花费s,每周每升酸奶的造价为c,需求量为y,问满足这n周需求量的最小花费 Input 第一行为两整数n和s,之后n行每行两个整数ci和yi (1<=n<=10000,1<=s<=100,1<=ci<=5000,1<=yi<=10000) Output 输出满足这n周需求量的最小花费 Sample Input 4 5原创 2016-03-31 10:36:38 · 1131 阅读 · 0 评论 -
CodeForces 628 C. Bear and String Distance(贪心)
Description 定义两个小写字母之间的距离为这两个字母在字母表中的距离,如dis(a,z)=25,dis(a,c)=2,两个长度相同串的距离为这两个串对应位置字母距离之和。现给出一个长度为n的数字串s和一个距离k,问是否存在一个长度为n的串ss,使得dis(s,ss)=k,如果存在任意输出一解,如果不存在则输出-1 Input 第一行为两个整数n,k(1<=n<=10^5,1<=k<=原创 2016-02-24 16:49:53 · 784 阅读 · 0 评论 -
CodeForces 626 C. Block Towers(贪心)
Description n个小孩搭高度为2k的塔,m个小孩搭高度为3k的塔,每个小孩的塔高不同,问这群小孩搭的最高塔塔高的最小值 Input 两个整数n,m(0<=n,m<=1000000,n+m>0) Output 输出这群小孩搭的最高塔塔高的最小值 Sample Input 3 2 Sample Output 8 Solution 贪心,问题转化为求一个只由2a,3b构成的原创 2016-02-25 16:22:15 · 646 阅读 · 0 评论 -
CodeForces 624 B. Making a String(贪心)
Description 要求用n个不同的字母构造一个串,给出串中每种字母出现次数的上限,并要求串中出现过的字母的数量都不同,问串长最多是多少 Input 一个整数n表示字母种数,之后为n个整数ai表示每种字母在串中出现次数使得上限(2<=n<=26,1<=ai<=10^9) Output 输出最长串长 Sample Input 3 2 5 5 Sample Output 11原创 2016-02-25 17:02:49 · 552 阅读 · 0 评论 -
CodeForces 620 C. Pearls in a Row(贪心)
Description 给出一个长度为n的序列,定义一个子段是好的如果这个子段中含有两个同样的数,问这个序列最多可以被划分成几个好的子段,如果不能被划分则输出-1 Input 第一行为一整数n表示序列长度,之后n个整数ai表示该序列(1<=n<=3*10^5,1<=ai<=10^9) Output 如果这个序列可以被划分成多个好的子段则输出最多的子段数和每个子段的起始终止位置,否则输出-1原创 2016-02-25 19:56:21 · 818 阅读 · 0 评论 -
CodeForces 615 C. Running Track(贪心)
Description 给出两个字符串a和b,每次只能从一个串a中截取一个子串,问欲用这些子串构成b串最少需要多少个a串(子串可反向) Input 两个字符串a和b,串长均不超过2100 Output 输出最少需要的a串数量以及每次截取a的哪一个子串,输出这个子串的起始位置和终止位置,如果这个子串在b中是反向的则反向输出;如果用a串的子串不能构造出b串则输出-1 Sample Input原创 2016-02-26 16:54:07 · 726 阅读 · 0 评论 -
CodeForces 609 A. USB Flash Drives(贪心)
Description 用n个U盘存m兆的文件,每个U盘内存为ai兆,问最少需要多少U盘 Input 第一行为两个整数n,m分别表示U盘数量和文件大小,之后n个整数表示这n个U盘的内存(1<=n<=100,1<=m<=10^5,1<=ai<=1000) Output 输出最少需要几个U盘能存下所有文件 Sample Input 3 5 2 1 3 Sample Output原创 2016-02-29 21:18:05 · 789 阅读 · 0 评论 -
HDU 5747 Aaronson(贪心)
Description 给出两个整数n和m,求方程的所有非负解中的最小值 Input 第一行一个整数T表示用例组数,每组用例占一行包括两个整数n和m (1<=T<=10^5,0<=n,m<=10^7) Output 对于每组用例,输出方程所有非负解中的最小值 Sample Input 10 1 2 3 2 5 2 10 2 10 3 10 4 13 5 20 4 1原创 2016-07-25 09:38:14 · 684 阅读 · 2 评论 -
HDU 5742 It's All In The Mind(贪心)
Description 一个长度为n的序列,只知道其中m个点且知道这个序列满足一下三个性质 1.0<=ai<=100,i=1,2,…,n 2.a1>=a2>=a3>=…>=an 3.a1+a2+…+an!=0 求(a1+a2)/(a1+a2+…+an)的最大值 Input 第一行一整数T表示用例组数,每组用例首先输入两个整数n和m分别表示原序列长度和已知元素的数量,之后m行每行两个整数原创 2016-07-27 16:08:38 · 399 阅读 · 0 评论 -
HDU 5744 Keep On Movin(贪心)
Description 有n中字符,每种字符有ai个,现要拿这些字符组成一些回文串,每个字符都要用且每个字符只能用一次,问组成的这些回文串中最小串长的最大值是多少 Input 第一行为一整数T表示用例组数,每组用例首先输入一整数n表示字符种数,之后n个整数ai表示每种字符的数量(1<=n<=10^5,1<=ai<=10^4) Output 对于每组用例,输出组成的这些回文串中最小串长的最大原创 2016-07-27 16:15:50 · 414 阅读 · 0 评论 -
CodeForces 500 B. New Year Permutation(贪心+Floyd)
Description 给出一个长度为n的序列p和一个n*n的矩阵A,如果A[i][j]=1,那么pi和p可以互换,输出经过一系列变换后字典序最小的p序列 Input 第一行为一整数n表示序列长度,第二行n个整数表示p序列,之后为一个n*n的01矩阵A Output 输出经过变换后字典序最小的p序列 Sample Inout 7 5 2 4 3 6 7 1 0001001 000原创 2015-11-02 14:46:32 · 573 阅读 · 0 评论 -
HDU 5777 domino(贪心)
Description 小白在玩一个游戏。桌子上有n张多米诺骨牌排成一列。它有k次机会,每次可以选一个还没有倒的骨牌,向左或者向右推倒。每个骨牌倒下的时候,若碰到了未倒下的骨牌,可以把它推倒。小白现在可以随意设置骨牌的高度,但是骨牌高度为整数,且至少为1,并且小白希望在能够推倒所有骨牌的前提下,使所有骨牌高度的和最小 Input 第一行输入一个整数T(1≤T≤10),每组数据有两行 第一行有原创 2016-08-01 16:10:25 · 634 阅读 · 0 评论 -
HDU 5627 Clarke and MST(贪心)
Description 克拉克是一名人格分裂患者。某一天克拉克变成了一名图论研究者。 他学习了最小生成树的几个算法,于是突发奇想,想做一个位运算and的最大生成树。 一棵生成树是由n−1条边组成的,且n个点两两可达。一棵生成树的大小等于所有在生成树上的边的权值经过位运算and后得到的数。 现在他想找出最大的生成树。 Input 第一行是一个整数T(1≤T≤5),表示数据组数。 每组数据原创 2016-08-05 10:16:45 · 421 阅读 · 0 评论 -
CodeForces 500 C. New Year Book Reading(贪心)
Description 一个人要读n本书,每本书有个重量wi,要读m天,每天读1本,他每天把要看的书抽出来(把上面的搬开,拿出要读的书再把上面的书放回去),看完以后放到一摞书的最上面,问根据他的阅读顺序怎样初始化书的排列顺序能使他搬书的重量最小,求出这个最小重量 Input 第一行两个整数n和mm表示书的数量和要读的天数,第二行n个整数wi表示每本书的重量,第三行m个整数bi表示第i天要读的书原创 2016-08-02 10:44:01 · 612 阅读 · 0 评论