基本算法-贪心
炒饭君
这个作者很懒,什么都没留下…
展开
-
HDU 4004 The Frog's Games(基本算法-贪心,搜索-二分)
HDU 4004 The Frog's Games(基本算法-贪心,搜索-二分)题目大意:长为L的河流,中间有n个石头,告诉你石头的位置,青蛙的跳跃能力至少为多少中途跳m次能跳过去?解题思路:二分+贪心的题目,因为青蛙的跳跃能力越强需要的次数就越少,因此青蛙的跳跃能力有单调性,所以二分枚举青蛙的跳跃能力,在判断这个能力下是否能够跳过去,这个用贪心解决,每次在这个能力下尽可能跳到远的石头上,最后看m次是否跳到了对岸。原创 2014-08-03 22:15:58 · 1300 阅读 · 0 评论 -
uva 11368 Nested Dolls
uva 11368 Nested Dolls题目大意:T组测试数据,每组数据,n个套娃,2*n 个数据表示 套娃的宽和高,依次为W1,H1,W2,H2...................Wn,Hn,只有 wi<wj 并且 hi<hj 的时候 i 号套娃能套进 j 号套娃,问你露在外面的套娃最左多少个解题思路:按照套娃的宽度从大到小排序,套娃的高度从小到大排序,利用贪心的思想,从左往右扫一遍,每个套娃尽量选择刚好高于他的套娃,如果没有,自己额外算一套原创 2014-03-25 13:44:04 · 1425 阅读 · 0 评论 -
uva 11724 Evaluate the Expression
BEvaluate the ExpressionInput: Standard InputOutput: Standard Output In this problem, we will consider a mathematical expression according to the following BNF grammar: =原创 2014-03-28 16:11:19 · 1721 阅读 · 0 评论 -
uva 10382 Watering Grass
uva 10382 Watering Grass题目大意:告诉你洒水车的个数以及草坪的长宽,以及各个洒水车的范围(圆心位置和半径),问你至少需要多少洒水车才能覆盖全草坪?如果都不能,输出 -1解题思路:先预处理将2维转化为1维的直线,求出每条线段的范围,也就是至少几条线段能覆盖全部,利用贪心的思想,按照起点排序,如果覆盖就尽量覆盖的远一点。原创 2014-03-11 16:38:34 · 1101 阅读 · 1 评论 -
uva 11100 The Trip, 2007
uva 11100 The Trip, 2007题目大意:给你 袋子的 数量 为 n ,以及各个袋子的大小,你可以将小袋子装在大袋子里面,使得露在外面的袋子的总数量最少?以及各个袋子的情况解题思路:这题弹了很多遍,原因算法不是很正确。尝试了第三种想法,才AC。首先袋子的数量最多的那种大小一定决定了最终的答案,关卡点,也就是那个数量。然后排好序依次 放。样例解释:2号大小的数量(3个)最多,因此答案是3路径的话:排好序还是 1 1 2 2 2 3第一次放完:1第二次放完11第原创 2014-03-12 12:06:35 · 1000 阅读 · 0 评论 -
uva 11054 Wine trading in Gergovia
uva 11054 Wine trading in Gergovia题目大意:有n个用户 , 第 i 家需要买啊a[i](a[i]>0)坛酒,否则 卖 a[i] 坛酒,问你运送总花费多少?解题思路:看代码即可,贪心水题原创 2014-03-11 13:08:01 · 923 阅读 · 0 评论 -
HDU 3697 Selecting courses (贪心)
Selecting coursesTime Limit: 2000/1000 MS (Java/Others) Memory Limit: 62768/32768 K (Java/Others)Total Submission(s): 1291 Accepted Submission(s): 313Problem Description A new原创 2013-10-14 15:26:35 · 1141 阅读 · 0 评论 -
uva 11157 Dynamic Frog (贪心)
uva 11157 Dynamic Frog (贪心)题目大义:一直青蛙跳过去再跳回来,路程中有大石头,小石头,小石头跳一下就掉下去了,大石头不会掉下去。问你来回的路程中,最大的一次跳跃距离多大?解题思路:转换下题意,想象成两只青蛙同时往对岸跳,过程中有大石头能供两只青蛙同时站立,小石头只能被一只青蛙站立就掉下去,问两只青蛙最大的一次跳跃距离多大?这个题意与题目是等价的,所原创 2013-04-10 21:06:58 · 2957 阅读 · 4 评论 -
HDU 4864 Task(基本算法-贪心)
HDU 4864 Task(基本算法-贪心)题目大意:有n台机器,m个任务,每台机器有xi,yi,每个任务也有xj,yj,当一个任务可以被处理的条件是,xj<=xi 且 yj<yi,处理完产生 500*xj+2*yj 的价值,问你最多产生的价值是多少?解题思路:注意y的范围是 y<100,也就是x相差1,y不管相差多少价值都很少。根据贪心的做法,肯定从高价值物品生产也就是按x排好序,再贪心,高价值的物品只需要在x比它大的所有机器中选择y满足条件的最小的那个(这个思考一下)原创 2014-08-01 13:35:58 · 1014 阅读 · 0 评论