
贪心算法
xjsong99
OI -> ACM -> AI
展开
-
NOIP2012 国王游戏
题目:http://www.luogu.org/problem/show?pid=1080 分析:贪心算法,可以证明正确性。 一开始只拿了60分,写了错解的贪心,后来看题解才明白。 需要高精度,可以用压位优化. 证明: 代码:#include <cstdio>#include <algorithm>#include <cstring>u原创 2015-06-13 21:51:11 · 473 阅读 · 0 评论 -
NOI库2469 电池的寿命
题目:http://noi.openjudge.cn/ch0406/2469/ 分析:对于每一组数据只要判断最大的那个数是不是比其余的数的和都要大,如果成立的话那当然就是剩下的所有电池与最大的电池车轮战,最大为n-1个数的和,如果不成立的话那么最大就是n个数的和的一半,也就是说电池是一定可以全部用完的。讲一下简单的证明过程,每次先对N个数进行排序,然后最大电池每次与其余电池(从高到低)PK一小时,原创 2015-09-29 09:58:24 · 1771 阅读 · 0 评论 -
NOIP2011 观光公交
题目:http://www.luogu.org/problem/show?pid=1315 分析:设last[i]表示来到第i个景点的乘客最晚的时间,time[i]表示车到达第i个景点的最小时间。 因为每个乘客到达的时间已经固定,所以要使总时间最小,就是使Σtime[down[i]]最小,其中down[i]代表每位乘客的目的地。 先考虑不用加速器的情况。可以直接递推求出答案,time[原创 2015-10-19 20:20:18 · 539 阅读 · 0 评论 -
BC#59 The Highest Mark
题目:http://acm.hdu.edu.cn/showproblem.php?pid=5501 分析:首先贪心分析。考虑…x1 x2….互换x1x2不影响其他题对答案的贡献,那么得出互换的条件,于是得到结论:按B/C的顺序排序。这里注意,不要写除法,会被卡,分子分母交叉乘起来比较大小。 然后需要一个01背包DP。这题与SD夏令营挂项链一题极为相似,当时我也没有想明白为什么贪心后还要DP,现在原创 2015-10-14 15:09:24 · 601 阅读 · 0 评论 -
Codeforces Edu#40 E. Water Taps
题目:http://codeforces.com/contest/954/problem/E题意: n个水龙头,每个水龙头每秒最多出ai升温度为bi的水; 问求混合后温度为T的水最多多少升每秒。分析: 按温度排序; 贪心如下: 左右两个指针l、r依次从温度为T的水龙头左右移动; 使之混合为T,某个水龙头的水量用完之后,指针左右移动; 直到l、r不能再移动为止。代码:...原创 2018-03-22 22:57:17 · 383 阅读 · 0 评论 -
CFGym 101775B. Scapegoat (贪心+优先队列)
题目:http://codeforces.com/gym/101775/problem/B题意: n个事件(锅),每个有一个严重程度a[i]; m个人,每人只能背一个锅,一个锅可以多个人来背; 求m个人背锅严重程度的方差分析: 首先,对n个锅每个锅分配一个人; 然后,考虑剩下的m-n个人如何分配; 我们贪心的分配下一个人,将他分配到将对方差产生最大优化的锅上; 我们可以得到平...原创 2018-07-27 18:42:08 · 793 阅读 · 0 评论 -
HDU6299 Balanced Sequence(2018多校第一场1002) (贪心)
题目:http://acm.hdu.edu.cn/showproblem.php?pid=6299题意: 给n个字符串,对其重排序,求排序后最大匹配的左右括号数分析: 1.首先,单个字符串自身内部匹配的括号不予考虑,因为无论怎么排序他们仍然匹配; 2.对于多个字符串,自身内部匹配后 [剩余’(‘多的串] 应排在 [剩余’)’多的串] 前面; 3.而对于放在前面的串,为了使他们能匹配...原创 2018-08-06 10:14:28 · 136 阅读 · 0 评论 -
Codeforces 101D. Castle (贪心)
题目: http://codeforces.com/problemset/problem/101/D题意:给定一颗树,和每次经过一条边的时间花费;初始人物在点1处,他将走过所有的点;每条边至多经过两次;当走到点i时,ans+=当前时间;最后输出最小的ans/(树上总点数-1)。分析:关键在于一个点有多颗子树时,如何选择走行顺序。考虑点root有两颗子树s1和s2;设f[s1]是...原创 2019-08-01 19:34:55 · 381 阅读 · 0 评论