zoukankan      html  css  js  c++  java
  • 万能的倍增

    NOIP前瞎扯 涨RP?

    一下内容都是瞎扯,可以跳过。

    倍增是一种非常好的技巧

    尤其是一些不带修改的题

    对于一个操作@

    如果@满足a@a=a

    那么就可以使用稀疏表的思想O(1)维护@操作

    例如区间最大最小经典的静态RMQ问题

    区间静态gcd问题

    区间取or,区间取and

    但是想加法,减法还有xor这种不满足a@a=a

    我们也可以倍增处理

    先预处理之后

    能在log复杂度内求倍增求区间加法,区间xor

    当然其实最快的方法是前缀和,前缀和是O(1)的

    不过对于a@a=a并且不支持逆元的,用倍增维护比较快

    倍增还用来求LCA 太常见了

    倍增还可以写二分,查询序列某数是否存在

    感觉有点像某种意义上牛蹲迭代法弱化版

  • 相关阅读:
    邪恶的强制数据转换
    知识普及
    判断是否为一个数字
    parseInt
    webpack学习记录
    数组隐藏属性
    elasticSearch基本使用
    elasticsearch安装和部署
    neo4j索引
    spark yarn 提交作业
  • 原文地址:https://www.cnblogs.com/oier/p/9917533.html
Copyright © 2011-2022 走看看