
贪心
文章平均质量分 87
HARD_UNDERSTAND
Just try
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
Codeforces 637D 模拟
题目:Codeforces 637D 题意: 有个人从0点走到m点,中间点会有障碍,他必须跨过去,但是在跨之前,必须跑一段距离,至少是s,然后他就可以跨越不大于d的距离,给出障碍点,问他能不能走到最后。 分析: 这场的题目叙述好难理解,这题我已开始读错题了,一位每个障碍是一段距离,WA了好几次,后来一读原来是点,晕~~ 后来改了一下就A了。简单说一下思路:因为有的障碍物之间的距离太小,所以不原创 2016-03-25 00:02:56 · 555 阅读 · 0 评论 -
“玲珑杯”ACM比赛 Round #22 E【贪心】
题目: http://www.ifrog.cc/acm/problem/1171?contest=1024&no=4 题意: 输入一个字符串,将他重新排列,使得重排之后的字符串的最小表示法,最大。 最小表示法是将字符串循环移动之后,字典序最小的那个。分析: 将所有字母作为一个字母的字符串放进一个multiset,每次取出其中第一个字符串和最后一个字符串,将他们连接放回multiset最后剩原创 2017-10-31 23:42:08 · 444 阅读 · 0 评论 -
Codeforces 791 C. Bear and Different Names【贪心】
题目:http://codeforces.com/contest/791/problem/C题意:有n个名字,如果连续的k个中有重名,那么就是NO,否则是YES。 现在给出n-k+1个连续的YES和NO序列,要求给出一种符合要求的n个名字。分析:如果是YES的话,那么这k个名字肯定是不同的,如果是NO的话,为了对YES不产生影响,那么就让第i个名字和第i+k-1个名字相同即可。代码:#includ原创 2017-03-24 11:15:25 · 371 阅读 · 0 评论 -
“玲珑杯”ACM比赛 Round #12【dp】
题目:http://www.ifrog.cc/acm/contest/1014 题解:http://www.ifrog.cc/acm/solution/17A签到题。 B。 题意: 给一个长度是n的字符串,有’0’,’1’,’?’,现在要在把?’变成0或1,变0的代价是c0,变1的代价是c1,而且不能有连续的n0个’0’或者n1个1,输入保证有解,问最小代价? 分析: 刚开始以为dp,想原创 2017-03-19 12:57:04 · 371 阅读 · 0 评论 -
Codeforces 754 D Fedor and coupons【优先队列】
题目:http://codeforces.com/contest/754/problem/D题意:从n条线段中取出恰好k条使得交集长度尽可能长,输出最优值和方案。分析:感觉这种题做过好多次了,贪心+优先队列就可做。 根据左端点排序,然后依次插入右端点,直到队列中元素有k个,然后当前插入的左端点是最大的,队首的就是右端点最小的。这样维护一下即可。 set和优先队列都可以,set似乎更方便些~~代码原创 2017-03-02 11:53:29 · 265 阅读 · 0 评论 -
51nod 1737 配对 【树形dp】
题目:http://www.51nod.com/onlineJudge/questionCode.html#!problemId=1737题意:给出一棵n个点的树,将这n个点两两配对,求所有可行的方案中配对两点间的距离的总和最大为多少。分析:贪心的想,为使距离总和最大,每条边乘上的系数就要尽量的大, 设fx表示点x的儿子个数,那每一条边能乘上的最大的系数,就是:min(n−fx,fx) 这种贪心原创 2017-02-20 16:31:02 · 573 阅读 · 0 评论 -
Codeforces Round #398 (Div. 2)题解
题目:http://codeforces.com/contest/767吐槽: 这场的题目不太行啊,感觉B题麻烦的要死,CD都比B简单。A Snacktower分析:简单模拟一下即可。B The Queue题意:排队在窗口买票,营业时间是[ts,tf],一个人办理业务需要的时间都是t 现在知道了n个人去到达的时间f[i] 现在小明要去买票,小明到达的时间如果跟n个人中某人一样,那么就在这些人后原创 2017-02-19 23:36:03 · 480 阅读 · 0 评论 -
Codeforces 733C (模拟,贪心)
题目:http://codeforces.com/contest/733/problem/C 题意: 给你n个数,a1,a2,a3,…an,再给你m个数b1,b2,b3,…bm,问你a序列能否通过合并变成b序列。合并的条件为只能相邻的数合并,ai与ai+1能合并的条件为ai> ai+1或ai< ai+1。合并出来的值为ai+ai+1。然后通过新序列合并下去问你能不能达到b序列?能达到的话输出是原创 2016-11-01 16:53:20 · 741 阅读 · 0 评论 -
LA 4731 蜂窝网络(简单dp+贪心)
题意: 手机在蜂窝网络中的定位是一个基本问题,假设蜂窝网络已经得知手机处于c1,c2,,,cn这些区域中的一个,最简单的方法是同时在这些区域中寻找手机,但这样做很浪费带宽,由于蜂窝网络中可以得知手机在这不同区域中的概率,因此一个折中的办法就是把这些区域分成w组,然后依次访问,求最小的访问区域数的期望值。比如,已知手机可能位于5个区域,概率分别是0.3 0.05 0.1 0.3 0.25,w=2,原创 2016-09-05 10:23:40 · 785 阅读 · 0 评论 -
hdu 5821 Ball 贪心(多校)
题目:http://acm.hdu.edu.cn/showproblem.php?pid=5821 题意: 有N个盒子,每个盒子最多装一个球. 球的颜色不一定相同. 现在要进行m次区间操作: 每次操作 [l, r] 后可以随意将区间内的球重新分配回去. 问经过上述操作后是否有可能达到给定的状态.分析: 官方题解: 假设有4个红球,初始时从左到右标为1,2,3,4。那么原创 2016-08-11 23:01:11 · 431 阅读 · 0 评论 -
UVa 10791 和最小的LCM (质因数分解)
题意: 输入正整数n(n<=2^31-1),找到至少两个正整数,使得他们的LCM为n,并且和是最小。分析: 这题昨天做的,WA的我一脸懵逼QAQ,刚刚又看了下,原来我看成了是两个整数,把至少这俩字漏看了QAQ。 如果是至少两个数的话,那么就非常简单了,只需要把质因数(次方)求和即可(因为可以是很多数的LCM) 此题需注意的情况: (1)当N = 1时,应输出2(1*1=1原创 2016-08-09 22:18:27 · 286 阅读 · 0 评论 -
hdu 5813 Elegant Construction 贪心(多校)
题目:http://acm.hdu.edu.cn/showproblem.php?pid=5813 题意: 给出n个城市,需要在这些城市之间修单向路,每个城市i都有一个要求,就是需要从i走到ai个城市,随意给出一个方案?分析: 做法跟官方题解一样: 将顶点按能到达的点数从小到大排序,排好序之后每个点只能往前面的点连边. 因而如果存在一个排在第i位的点,要求到达的点数大于i-1,则不原创 2016-08-09 21:04:27 · 387 阅读 · 0 评论 -
Codeforces Round #351 Div. 2 D 贪心
D. Bear and Two Pathstime limit per test2 secondsmemory limit per test256 megabytesinputstandard inputoutputstandard outputBearland has n cities, numbered 1 through n.原创 2016-05-08 09:38:51 · 520 阅读 · 0 评论 -
poj 1328 雷达覆盖 贪心
题目:Figure A Sample Input of Radar Installations题意:在x轴上某些位置装雷达,问怎么才能使海岛p被信号覆盖,有n个海岛,雷达覆盖范围是d。分析:考虑一个海岛p,对于覆盖它的雷达放的最优的位置是它在圆圈的边缘上,因为这样这个雷达就可以覆盖更多其他的海岛。那么先按x排序,对于当前的一个圈,看看是否下一个海岛是否可以在圈内原创 2016-04-21 12:48:22 · 834 阅读 · 0 评论 -
Uva 11134 传说中的车 贪心的思维
题目大意:在一个n*n的棋盘上放置n个车,使得它们之间都不能互相攻击(任意两个车都不能同行或同列),并且,对于第i个车,限制它只能放在一个矩形区域内,(xli, yli),这个矩形的左上角顶点坐标是(xli, yli),右下角顶点坐标是 (xri, yri), 1 ≤ i ≤ n, 1 ≤ xli ≤ xri ≤ n, 1 ≤ yli ≤ yri ≤ n.分析: 两个车相互攻击的条件是在同一行或列原创 2016-05-10 20:19:19 · 1177 阅读 · 0 评论 -
Wannafly模拟赛5 A Split 【贪心】
题目:https://www.nowcoder.com/acm/contest/18/A题意:你有一个大小为��的����������,每次你可以从你已有的����������中选择一个大小不为1的����������,设他的大小为��,然后把它分裂成��和��−��,其中1≤��<��,这样你获得的收益是��∗(��−��)给定��,��,求最少分裂几次才能得到至少��的收益分析: 最后分的大小原创 2017-11-05 18:17:25 · 1317 阅读 · 0 评论