合集-算法
摘要:CDQ分治 对比普通分治 把一种问题划分成不同子问题, 递归处理子问题内部的答案, 再考虑合并子问题的答案。 再看CDQ分治 有广泛的应用, 但我不会。 但在接下来的题目体会到大概: 将可能产生的对于答案的贡献分为两类: 与 内部产生的
阅读全文
摘要:分块 理解 优雅暴力, 对序列进行划分, 进行一些预处理, 总而减少时间复杂度, 有技术含量的是通过列式子, 再通过数学方法或者其他奇奇怪怪的方法, 求出合适的块长。 直接上题目 教主的魔法 题解 块长定为 , 针对每一块内部进行排序。 对于修改操作, 整块就直接维护一个增量
阅读全文
摘要:莫队算法 莫队算法是由莫涛发明的离线算法, 有很多应用 , 实现起来也较为简单, 可以称作优雅的暴力, 大部分情况是将所有询问离线下来,通过合理的排序, 然后进行 的转移, 由于是通过分块排序和 转移, 所以看起来既暴力又透出一丝优雅。 普通莫队 直接上题吧 P1
阅读全文
摘要:FHQ平衡树 FHQ平衡树是一棵treap, 考虑treap都有的性质。 treap 是一棵笛卡尔树, 同时具有堆的性质, 和BST的性质, 并且每个节点权值不同的 treap 的形态是固定的。 treap的堆权值( )完全随机时, treap的树高期望为 。
阅读全文
摘要:数论 lucas定理 数论分块 数论分块可以快速计算一些含有除法向下取整的和式(即形如 \(\sum_{i=1}^nf(i)g(\left\lfl
阅读全文
摘要:简述 全局第k小 线段树二分 树状数组倍增 区间第k小 主席树 划分数
阅读全文
摘要:dfs序 定义 dfs序是指:每个节点在dfs深度优先遍历中的进出栈的时间序列。 序列 树上路径 任意子树都是连续的。例如假设有个子树 ,在序列中对应的部分是: ;子树 ,在序列中对应的部分是: 。 任意点对 \((a,b
阅读全文
摘要:历史版本和线段树 功能 可以累计所有历史版本的答案, 可以解区间子区间问题 算法 先上题目: Good Subsegments 题意: 求解 区间里“好的”子区间个数。 “好的”定义为区间内元素排序后是连续的。 思路: 考虑没有重复的数, 所以当一个区间是“好的”相当于\(ma
阅读全文
摘要:左偏树 定义: 左偏树是一个堆, 具有堆的性质, 并且是左偏的 如果一个点只有左儿子或右儿子, 那么就称它为外节点, 定义一个结点的 等于这个点到最近外节点的距离加 。特殊的, 外节点 等于 。 左偏性质: 每个节点的左儿子 \(dist\
阅读全文
摘要:同余最短路 是一种通过同余把状态分类, 再通过建图跑最短路解决问题的算法。可以高效率解决一些特定的问题。 非常的奇妙。 算法 鉴于学不懂, 所以直接搬 的题吧。 呜呜呜。 P3403 跳楼机 有一栋高为 的楼, 初始在一楼, 每次可以向上移动 , \(y
阅读全文
摘要:区间最值操作, 历史最值问题 来源 吉老师2016集训队论文, oiwiki, 网络上各种博客。 概述 区间最值操作指的是: 将所有的 , 。 历史最值问题指的是: 新定义一个数组 , \(b[i]
阅读全文
摘要:Splay树 Splay树又名伸展树, 是tarjan为LCT而发明的平衡树, 通过旋转操作维护二叉搜索树的高度平衡, 其实不管时间复杂度的证明, Splay树挺简单的。 均摊复杂度 (需要用到势能分析), 可以区间操作, 不能可持久化, 常数较大(大于FHQtreap), 但
阅读全文
摘要:Link Cut Tree 简称LCT(不是Li Chao Tree), 是一种非常强大的数据结构。 声明 该博客写来很大部分目的是帮助自己理解, 笔者水平有限, 没办法完全原创, 有很多内容源自于OI-wiki,和网上博客, 见谅。 功能 考虑一些问题: 树上单点查, 树上路径修改, 这是树上差分
阅读全文
摘要:珂朵莉树 这个名字我猜是来源于初次诞生这个算法的题目->Willem, Chtholly and Seniorious 算法 适用于数据随机, 并且有区间推平操作, 也就是区间赋值操作, 就可以用set维护, 达到优秀的 时间复杂度。 定义 struct Node{ int
阅读全文
摘要:网络流 主要分为以下三大问题: 网络最大流问题 网络最小割问题 最小费用最大流问题 现在考得更难的还有模拟网络流, 运用网络流思想, 来解决一些神秘问题。 算法 接下来我会讲解一些通过找增广路找最大流的算法, 也就是Dinic和EK算法。 最大流最小割定理 最大流最小割定理: 对于任意网络 \(G
阅读全文
摘要:数论分块 大部分内容来源于OI-WIKI 引理1: \(\forall a,b,c\in\mathbb{Z},\left\lfloor\frac{a}{bc}\right\rfloor=\left\lfloor\frac{\left\lfloor\frac{a}{b}\right\rfloor}{
阅读全文