一天天的为了啥。|

lgh_2009

园龄:1年粉丝:1关注:0

【杂项】trick

  1. 数区间颜色个数只数最左边的一个。

  2. 维护时间戳来避免多次 memset

  3. 树状数组上倍增-O(logn)

P6619 [省选联考 2020 A/B 卷] 冰火战士

开始二分,设初始位置为 rsum=i=1rtri,要求的数记为 ans

考虑依次跳 2logn,2logn1,...,20 个单位,方式如下:如果跳的这位更新后 >ans,则不更新,否则更新。也就是说,时刻保证 i=1rtr+iy

发现往后跳的段都是诸如 [r+1,r+2k] 的段,显然树状数组可以 O(1) 统计。

  1. 关于平均值的问题中,若给定平均值,可以考虑将将每个位置的值减去平均值,将平均值转化为了区间和大于等于0。

  2. 关于中位数等问题中,常见二分答案,将大于 mid 的数记为 1,小于 mid 的数记为 -1,如果区间和为0则这个数就是序列中位数。P1627

  3. 多个约束条件,常见拆条件,例如枚举或者算贡献。

  4. x 个区间,要求公共点 区间中有位置被覆盖次数 >=xP1712 [NOI2016] 区间

  5. 序列中随机选取 [l,r] 的期望等价于求出和除以序列数。CF846F P5068 [Ynoi2015] 我回来了

  6. 严格递增和不严格递增:令 bi=aii,就将严格递增转化为了不严格递增。

  7. 考虑一个柿子如果形如 fi=maxijn(fj+min(sum1i,j,sum2i,j)),那么可以先强制钦定取第一项,做两次算即可。

  8. 考虑一个 dp 柿子从前面连续的项转移,但是不能用单调队列,考虑线段树或 cdq 分治维护。

  9. 势能分析

  10. 考虑一些关于最大值的东西可以搬到笛卡尔树上分治。

  11. 考虑一个暴力可能可以优化的途径:记忆化、阈值分治

本文作者:lgh_2009

本文链接:https://www.cnblogs.com/lgh-blog/p/18043534

版权声明:本作品采用知识共享署名-非商业性使用-禁止演绎 2.5 中国大陆许可协议进行许可。

posted @   lgh_2009  阅读(8)  评论(0编辑  收藏  举报
点击右上角即可分享
微信分享提示
评论
收藏
关注
推荐
深色
回顶
收起