首页 > 其他分享 >贪心

贪心

时间:2023-09-27 20:24:30浏览次数:32  
标签:无差别 蚂蚁 位置 编号 初始 贪心

这玩意真的很烦,贪心题不分难度我都想不出来……

也许是写的题太少了……


2023.9.27

P1367 蚂蚁

先不要管蚂蚁的编号,也就是把所有蚂蚁看成无差别的。

贪心里面貌似非常喜欢无差别这个性质:因为无差别,所以A,B相遇之后掉头,其实相当于继续往前走(而且方向不变),因为蚂蚁们没有区别。

然后就可以直接算出所有蚂蚁最终的位置。

可是题目要按照编号输出,怎么办呢?

我们发现对于一个蚂蚁A,如果它初始时左边的蚂蚁是L,右边的蚂蚁是R,那么它最终一定是在L和R中间,因为它一碰到L(或者R),就会往回弹,它永远不可能穿过去。

对于任何一只蚂蚁,它们的相对位置肯定就是初始时的相对位置。

证明:假设不是初始的相对位置,那么一定有一对蚂蚁x和y,x一开始在y左边,然后在y右边,那么x必然要穿过y,而这是不允许的。

所以再记一下从左到右每个蚂蚁应当是编号是多少的蚂蚁,记到编号数组里面,按照顺序输出就行了。

标签:无差别,蚂蚁,位置,编号,初始,贪心
From: https://www.cnblogs.com/zhangchenxin/p/17734230.html

相关文章

  • 【POJ 3253】Fence Repair 题解(贪心算法+优先队列+哈夫曼树)
    农夫约翰想修理牧场周围的一小段围栏。他测量了围栏,发现他需要N(1≤N≤20000)块木板,每块木板都有一定的整数长度Li(1≤Li≤50000)单位。然后,他购买了一块长度刚好足以锯入N块木板的长木板(即,其长度为Li长度的总和)。FJ忽略了“切口”,即锯切时锯屑损失的额外长度;你也应该忽略它。FJ伤心地......
  • 【POJ 1521】Entropy 题解(贪心算法+优先队列+哈夫曼树)
    熵编码器是一种数据编码方法,通过对删除了“浪费”或“额外”信息的消息进行编码来实现无损数据压缩。换句话说,熵编码去除了最初不需要的信息,以准确编码消息。高度的熵意味着一条消息包含大量浪费的信息;以ASCII编码的英文文本是具有极高熵的消息类型的示例。已经压缩的消息,如JPEG图......
  • 【枚举】【贪心技巧】【集训队互测2021】子集匹配
    题目描述给定\(n,k(2k\geqn)\),二进制中有\(k\)个\(1\)的不超过\(n\)位的数有\(\binom{n}{k}\)个,有\(k-1\)个\(1\)的有\(\binomn{k-1}\)个,后者显然大于等于前者,要求对于每一个\(k\)个\(1\)的数\(x\),都找出一个\(k-1\)位的数\(y\)与之对应,且\(x......
  • 代码随想录算法训练营-贪心算法-5|56. 合并区间、738. 单调递增的数字、968. 监控二叉
    56. 合并区间时间复杂度:O(nlogn)空间复杂度:O(logn),排序需要的空间开销1classSolution:2defmerge(self,intervals):3result=[]4iflen(intervals)==0:5returnresult#区间集合为空直接返回67int......
  • 代码随想录算法训练营-贪心算法-4|406. 根据身高重建队列、452. 用最少数量的箭引爆
    406. 根据身高重建队列1. 一定要想如何确定一个维度,然后再按照另一个维度重新排列。2.先确定身高的维度,降序排列。3. 按照身高排序之后,优先按身高高的people的k来插入,后序插入节点也不会影响前面已经插入的节点,最终按照k的规则完成了队列。4. 局部最优:优先按身高高的peop......
  • POJ 2057 The Lost House 树形DP+贪心
          最近一直在做树形dp,感觉这道题出的非常不错。卡了我一天。。      一上来读完题感觉和dp的思路很像,但是自己太弱了,无从下手。于是各种百度看结题报告、看论文。推荐几个结题报告 http://blog.sina.com.cn/s/blog_5f5353cc0100hd08.html还有06年国家集训队杨......
  • Solution Set - 贪心和数据结构
    感觉自己好菜啊,这个专题真的不太会。CF1439CGreedyShoppingLink&Submission.容易发现,当此人连续买了一段物品之后,他的钱数至少减半。所以他最多只会买\(O(\logV)\)段物品。那么就可以直接模拟每次询问,不断往后轮流找最多能买到的位置和下一个能买的位置。二者都可以线段树......
  • 82 贪心 [NOIP2012 提高组] 国王游戏
    视频链接: LuoguP1080[NOIP2012提高组]国王游戏#include<cstdio>#include<cstring>#include<iostream>#include<algorithm>usingnamespacestd;structnode{inta,b;booloperator<(node&t){returna*b<t.a*t.b;}}......
  • 反悔贪心总结
    一.OlympiadinProgrammingandSports-洛谷|计算机科学教育新生态(luogu.com.cn)(1)题意: (2)解题思路考虑按编程能力从大到小排序,先选完编程团队中的p个人,然后再考虑体育团队的s人,考虑维护3个优先队列,一个是a[i]的大根堆,一个是b[i]的大根堆,一个是b[i]-......
  • B. Buying gifts[贪心]
    Problem-1801B-Codeforces题意是需要给两个人买礼物,有n个商店,每个商店只能给一个人买,而且每个商店给两个人买的礼物的价钱也可能不同,问给两人买的礼物的最大价格之差最小是多少。我们考虑这种情况。如果当前给b买的礼物最大值为x,那么那些商店里给b礼物价格小于等于x的我们......