CF545C【贪心】


一开始把数组开小了然后欢乐卡了一页评测,建议重读小学


考虑贪心:第一棵树一定往左边倒,最后一棵树一定往右边倒,接下来考虑中间的树怎么倒最优。
首先按xxx从小到大排序,对于一棵树如果能往左倒就往左倒,这样一定会使贡献+1+1+1,如果不能往左边倒就判断能不能往右边倒。一开始觉得这样会不会使右边的树没法倒从而使答案变劣,但仔细考虑,如果这棵树往右边倒,那么这棵树对答案的贡献一定+1+1+1,右边那棵树只考虑往左边倒的情况时该贡献可能不变可能−1-1−1,这样的话答案最多不会变更优,但一定不会变劣,对答案的贡献是等价的。
CodeCodeCode
一开始想用一个now变量来记录现在被占用的位置,但是这样逻辑会显得比较混乱,于是直接在原xxx上进行修改即可,这样每个判断标准就是等价的啦。

CF545C题解【贪心】相关推荐

  1. ACM题解——贪心专题——木头加工

    ACM题解--贪心之木头加工 题目描述 There is a pile of n wooden sticks. The length and weight of each stick are know ...

  2. PAT甲级1125 Chain the Ropes:[C++题解]贪心、优先队列、合并果子

    文章目录 题目分析 题目来源 题目分析 来源:acwing 板子题:合并果子合并果子优先队列 分析:贪心策略是: 每次取最短的两条绳子a和b.该两条绳子合并为1条绳子,且长度变为a+b2\frac{a ...

  3. PAT甲级1038 Recover the Smallest Number (30 分):[C++题解]贪心、排列成最小的数、字符串

    文章目录 题目分析 题目来源 题目分析 来源:acwing 分析: 贪心: 对于字符串a和b,如果 a+b < b+a (这里+代表字符串中的连接)代表字典序更小.举例 a = 321 , b ...

  4. PAT甲级1037 Magic Coupon:[C++题解]贪心

    文章目录 题目分析 题目来源 题目分析 来源:acwing 分析: 贪心. 两个数列分别从大到小排列.从前往后遍历,如果a数组和b数组前k个数都是正数,就相乘累加到res中: 从后往前遍历,如果a数组 ...

  5. leetcode题解——贪心

    文章目录 738. 单调递增的数字 435. 无重叠区间(活动调度问题) 134. 加油站 738. 单调递增的数字 当且仅当每个相邻位数上的数字 x 和 y 满足 x <= y 时,我们称这个 ...

  6. leetcode 贪心_leetcode题解(贪心算法)

    定义 贪心算法(又称贪婪算法)是指,在对问题求解时,总是做出在当前看来是最好的选择. 也就是说,不从整体最优上加以考虑,他所做出的是在某种意义上的局部最优解. 通常贪心算法的代码会非常短而且思路也非常 ...

  7. USACO 2021 January Contest, BronzeProblem 3. Just Stalling题解 贪心 排序

    已经鸽了好久了写一篇题解把 题目描述 Farmer John 有N头奶牛(1≤N≤20),高度为a1-aN.他的牛栏有N个牛棚,高度限制分别为b1-bN(例如,如果b5=17,那么一头高度不超过17的 ...

  8. PAT甲级1029 Median:[C++题解]贪心、二路归并

    文章目录 题目分析 题目来源 题目分析 来源:acwing 分析: 如果直接排序,时间复杂度是O(nlogn),n=2∗105O(nlogn),\ n=2*10^5O(nlogn), n=2∗105会 ...

  9. PAT甲级1113 Integer Set Partition:[C++题解]贪心

    文章目录 题目分析 题目来源 题目分析 来源:acwing 分析: 集合元素个数之差为0或1.两个集合元素之和,分别取最大的n1个数,和剩下的所有的数. ac代码 #include<bits/s ...

最新文章

  1. 利用SQl对数据库实行数据拆分与组合
  2. pyecharts 应用6 三维曲面图
  3. c# Selenium 如何模拟滑动geetest 验证码
  4. c语言 如何创建adt_编程那些事儿:面向对象编程基石之数据抽象(ADT)
  5. 大屏监控系统实战(10)-大屏展示前20个博主的排名、票数及名次相对于前一日的升降情况
  6. mysql对所有id求积_sql 行列式 转换,
  7. 蓝桥杯 ADV-202算法提高 最长公共子序列(动态规划)
  8. 数据库水平切分的实现原理解析---分库,分表,主从,集群,负载均衡器(转)...
  9. 基于haneWIN实现windows与linux之间文件共享
  10. 硬盘测试软件w10,Win10硬盘检测工具
  11. [从零开始学习FPGA编程-58]:集成电路设计的运作模式(Fabless/Foundry/IDM模式)
  12. java、web前端开发日常记录
  13. [Big Data - Codis, Mycat(cobar)] 企业互联网+转型实战:如何进行PB级别数据的架构变迁...
  14. 台前与幕后的5G战争
  15. vue使用高德地图并且绘制多边形
  16. 多个公网服务器搭建k8s集群
  17. 笔记本html连接电视机,详细教您笔记本连接电视
  18. 联想开机按f2怎么修复系统图解_windows10开机按f几进入一键还原 按下F2就进入联想电脑拯救系...
  19. 新知实验室_腾讯实时音视频产品体验
  20. uni-app基于安卓使用sqlite

热门文章

  1. 浅谈人工智能神经网络的优点
  2. 【微服务】微服务熔断器--Hystrix
  3. win10右键新建为什么没有文本文档了
  4. 配电站智能巡检机器人,电力智能巡检机器人
  5. Python+NetworkX画图的nx.draw_networkx(函数详解)
  6. JavaScript 如何计算两个日期之间的天数
  7. Android 打点方式总结
  8. Google reCAPTCHA ----------验证码
  9. Nim问题和阶梯Nim(staircase nim)
  10. [kuangbin带你飞]专题十二 基础DP1 题解+总结