
贪心
FeBr2
(๑•̀ㅂ•́)و✧
展开
-
贪心——Playing with numbers ( Gym 101061 E )
题目链接: http://codeforces.com/gym/101061/problem/E 分析: 给出一个长度最大为100000位的数字,求从中剔除掉N个数字后得到到最大数和最小数。 题解: 非常简单的一道贪心: 若是找最小数,那么维持原来的数字单调递增,若递减,则把前面的数字删去直到递增,遍历一遍后如果没删够,则从后面删。 若是找最大数,那么维持原来的数字单调递减,若递增,则把原创 2016-08-16 10:55:34 · 636 阅读 · 0 评论 -
贪心——HDU 4415
题目链接: http://acm.hdu.edu.cn/showproblem.php?pid=4415 题意: 你有一把耐久度为 mm 的武器,你要去杀 nn 个敌人,每个敌人需要耗费 AiA_i 的耐久度,但会掉落一把可以击杀另外 BiB_i 个敌人的武器,求用最小花费最多能击杀多少个敌人 分析:首先我们把敌人分成两类,一类是武器有作用的(BiB_i 不为0),一类是武器无用的(BiB_i 为0原创 2017-04-29 13:17:43 · 415 阅读 · 0 评论 -
贪心——The Martian Challenge 2017 #G. Pick Your Team
题目链接: http://codeforces.com/gym/101306/problem/G 题意:给出N个士兵的力量值,地球人和火星人轮流拿(地球人先),给出火星人拿取士兵的先后顺序。求地球人怎么拿使得最后双方的差最大。求这个最大差值。 分析:我们可以以火星人拿的顺序作为参考,假设地球人每次拿这个顺序下剩下的第一个,火星人拿第二个,并且在每次火星人拿的时候,比较一下当前的士兵力量值和之前地球人原创 2017-04-04 00:19:57 · 677 阅读 · 0 评论 -
贪心+树剖(假)—— HDU 5242
题目链接: http://acm.hdu.edu.cn/showproblem.php?pid=5242 题意: 给出一颗有根树,每个节点有一个权值,每个权值只可以被获取一次,从根节点走到任意一个叶子节点为完成一次游戏,问完成K次游戏能获得的最大权值为多少。 分析:这题用到了一点树剖的思想:我们从根节点出发做一次深搜,在回溯的时候,在每个节点处保存最大权值的子树的indexindex,并保存这个最大原创 2017-04-09 10:40:29 · 467 阅读 · 0 评论 -
贪心——玲珑学院OJ 1107 Niro loves Chinese
题目链接: http://www.ifrog.cc/acm/problem/1107 题意:给出一个长度为N的01串,其中包含一些 ’ ? ’ ,将一个 ’ ? ’ 替换成0的花费是C0,替换成1的花费室C1,并且限制不能出现连续N0个0和连续N1个1,数据保证有解,求最小花费 分析:初看我们大多会想到通过动态规划来解这道题,但是因为N的范围室1E5,需要优化成最大堆来,而且也比较麻烦。所以我们猜想原创 2017-03-18 19:53:57 · 394 阅读 · 0 评论 -
贪心——HDU 5360
题目链接: http://acm.hdu.edu.cn/showproblem.php?pid=5360 题意: 现在要邀请N个人,每个人接受邀请的条件为,在邀请他时,已经接受邀请的人数需要在 [Li,Ri][L_i, R_i]之间,求一个邀请顺序使得最后接受邀请的人数最多 分析:我们肯定需要按L排序,然后每次选择L小于等于当前受邀人数的人加入一个按R从小到大排序的优先队列,然后从这个队列中选则R原创 2017-02-21 18:52:19 · 346 阅读 · 0 评论 -
贪心——田忌赛马(HDU1052)
题目链接: http://acm.hdu.edu.cn/showproblem.php?pid=1052 题意:田忌和王各有n匹马,每匹马有一个速度值,他俩赛马,赢者得200分,输者减200分,求田忌最多能得到多少分 分析:贪心思路来想,我们先考虑完所有田忌能赢的情况,然后再用最小成本去输:先判断田忌最好的马是否能赛过王最好的马 如若不行则考虑田忌最差的马是否能赛过王最好的马 若还是不行则用田忌最差原创 2017-02-13 13:30:46 · 472 阅读 · 0 评论 -
贪心——HUD 4550
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=4550 题意:给出一串数字的顺序,按顺序得到数字后可以决定将当前数字放在原来数字串的左端或者右端构成一个新的数字串,求给定顺序下能得到的最小数 分析:我们可以发现最小的数字必须放在整个数字串的最左端,所以我们可以把给定的数字顺序按照最小数字的位置划分为2块,在最小数字前面的数字按照小的在前,大的在后的顺序原创 2017-01-17 21:59:20 · 378 阅读 · 0 评论 -
贪心——Kickstart 2017 practice Round #C
题目链接: https://codejam.withgoogle.com/codejam/contest/6304486/dashboard#s=p2 题意: 给你L和M,表示一个长度为L+M的串里包含L个’(‘,和M个’)’,求这个串的所有子串中,包含合法串的最大数量是多少? 合法子串: It is the empty string, or: It has the form (S), where原创 2017-02-20 23:06:41 · 684 阅读 · 0 评论 -
贪心+链——Ant Man(Codeforces Round #366 (Div. 1) B )
题目链接: http://codeforces.com/problemset/problem/704/B 分析: 给出n个正整数表示x轴上坐标,给出起点s和终点e,要求从s出发遍历其他点到达终点e的花费最小,花费计算: 从点i到点j |xi - xj| + ci + bj seconds if j < i. |xi - xj| + di + aj seconds otherwise (j原创 2016-09-06 22:02:20 · 444 阅读 · 0 评论 -
贪心——HDU 1009
题目链接: http://acm.hdu.edu.cn/showproblem.php?pid=1009 分析: 给你M份猫粮,和N个房间,每个房间有J[i]份JB,并且需要F[i]份猫粮,如果你给出房间需求猫粮的a%,也将会获得房间内JB的a%,问,怎样才能获得最大份量的JB。 题解: 虽然是一道很水的贪心,不过还是有几个坑点:首先我们都会想到用 J/F 得到每个房间的投入和产出比排序来选房原创 2016-08-13 10:55:25 · 352 阅读 · 0 评论 -
贪心+数学——2016 (湖南省第十二届大学生计算机程序设计竞赛 A)
题目链接: http://acm.csu.edu.cn/OnlineJudge/problem.php?id=1803 分析: 给出连个数n,m(数据范围十亿),求1-n中的数a乘以1-m中的数b得到的结果a*b中有多少个是2016的倍数。对于这种整除问题。我们可以直接分余数和商来做。 题解: 我们可以发现对于任意一组数,乘以1-2016和乘以2017-4032得到的结果中2016的倍数的个数原创 2016-09-03 22:00:53 · 967 阅读 · 0 评论 -
二分+贪心——HDU 5855
题目链接: http://acm.split.hdu.edu.cn/showproblem.php?pid=5855 参考博客: http://blog.youkuaiyun.com/queuelovestack/article/details/52222085 分析:给出N个工厂,每个工厂给出建造时间和费用,给出M个商店,每个商店给出收益和需要哪些工厂供货才能盈利,求获得L盈利的最小时间(盈利 = 商店的原创 2016-08-17 13:39:02 · 418 阅读 · 0 评论 -
贪心——HDU 4572
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=4572 题意:给出M行瓶子,每行N个且高度都为这一行的序号(1~M),求重新排列瓶子的位置,使得所有行里,最大高度和最小。排列的方式必须满足: 同一列不许有重复;且同一行相邻两个瓶子高度差不超过1 分析:这题初看很懵逼,但其实我们可以把问题转换成给出M个罐子,每次往这些罐子里扔M个硬币,面值为1~M,每原创 2017-04-16 19:59:36 · 422 阅读 · 0 评论