随笔分类 -  学习笔记/算法总结

摘要:upd at 2025.02.16 其实早就断更了。如果想了解更多详情,请前往 Zctf1088 的博客【学习笔记/算法总结】 upd at 2025.02.09 鉴于前段时间校 OJ 上的博客爆炸。为避免重大损失,搬迁至此。 板子 前言 是在我学斜率优化dp的时候,觉得需要一些模板。纯粹就是按写入 阅读全文
posted @ 2025-03-09 15:57 Zctf1088 阅读(4) 评论(0) 推荐(0) 编辑
摘要:线段树 概述 线段树是一种非常【数据删除】的数据结构。 后略 基本操作 建树 略 单点修改 略 区间求和 略 单点查询 略 区间修改 lazy 标记 略 代码 略 其他操作 区间最值/区间乘 略 【数据删除】操作 一般这种线段树会有一个非常【数据删除】的 pushup。比如说,最基础的,维护区间最大 阅读全文
posted @ 2025-02-16 17:28 Zctf1088 阅读(7) 评论(0) 推荐(0) 编辑
摘要:Kurskal 重构树 定义 Kurskal 重构树就是在跑 Kurskal 的时候处理出一棵树,这棵树会有一些奇妙的性质。 考虑如何构建。 首先新建 n 个集合,每个集合前有一个节点,点权为 0。 每一次加边会合并两个集合,我们就可以新建一个点,点权为加入边的边权,同时将两个集合的 阅读全文
posted @ 2025-02-06 11:37 Zctf1088 阅读(16) 评论(0) 推荐(0) 编辑
摘要:笛卡尔树 定义 笛卡尔树就是一种二叉树。笛卡尔树的每一个节点由一个二元组 (k,w) 构成。要求 k 满足二叉搜索树[1]的性质,w 满足堆[2]的性质。当 w 的值随机时,这就是一颗 Treap。 Treap 和笛卡尔树 Treap 是笛卡尔树中的一种,只不过 Tr 阅读全文
posted @ 2025-02-06 09:16 Zctf1088 阅读(14) 评论(0) 推荐(0) 编辑
摘要:折半搜索(Meet in the Middle) 思想 先搜索前一半的状态,再搜索后一半的状态,再记录两边状态相结合的答案。 一般暴力搜索的时间复杂度是 O(2n) 级别的,但是折半搜索可以将时间复杂度降到 O(2×2n2)。 例题 拿题说事儿 阅读全文
posted @ 2025-01-17 16:26 Zctf1088 阅读(15) 评论(0) 推荐(0) 编辑
摘要:斜率优化DP 例题 HNOI2008 玩具装箱 朴素dp 设 dpi 表示前 i 个物品,分若干段的最小代价。 状态转移方程为: \[dp_{i}=\min _{j<i}\left\{dp_{j}+\left(i-(j+1)+s_{i}-s_{j}-L\right)^{2}\rig 阅读全文
posted @ 2025-01-17 15:40 Zctf1088 阅读(58) 评论(0) 推荐(1) 编辑
摘要:警钟长鸣(小技巧)sort 函数排序不具有稳定性。 不开 long long 见祖宗。 特殊情况下,开了 #define int long long 见祖宗。 memset 见祖宗。 大量输入建议使用快读。 线段树维护区间最小值区间覆盖 lazy 的初始值要赋成 INF。 Cnm 在满足 \(n\ \&\ 阅读全文
posted @ 2024-11-10 17:01 Zctf1088 阅读(39) 评论(0) 推荐(0) 编辑
摘要:二分图 概念 假设 G=(V,E) 是一个无向图,若点集 V 可以分解成互不相交的子集 (A,B),并且图中所有边 (i,j) 的端点 ij 分别属于子集 AB,则称 G 是一个二分图。 判断 一张无向图时二分图,当且仅当图 阅读全文
posted @ 2024-10-23 20:59 Zctf1088 阅读(40) 评论(0) 推荐(0) 编辑
摘要:平衡树 对于二叉搜索树[1]而言,常见的平衡性定义是指:以 T 为根的树,每一个左子树和右子树的高度差最多为 1。 Treap 概述 Treap 是一弱平衡的二叉搜索树。他同时符合二叉搜索树和堆[2]的性质,名字也因此为 tree(树) 和 heap(堆)的结合。 一般情况下,我们会赋予一个节点两个 阅读全文
posted @ 2024-09-02 20:48 Zctf1088 阅读(46) 评论(0) 推荐(0) 编辑
摘要:为什么我要把他俩放一起写呢?俩随机化算法常常一起用,简直是天生一对儿。 Miller Rabin 算法 定义 Miller-Rabin 素性测试[1]是进阶的素数判定方法。 实现 二次探测定理 如果 p 是奇素数,则 x21(modp) 的解为 \(x \equ 阅读全文
posted @ 2024-08-23 20:08 Zctf1088 阅读(31) 评论(0) 推荐(0) 编辑
摘要:AC 自动机 前言 我觉得AC自动机这种东西非常抽象,有必要写一篇博客来整理一下,以加深理解。 概况 AC自动机是以 Trie 树的结构为基础,结合 KMP 思想建立的自动机,用于解决多模式串匹配等任务。 一般来说,建立一个AC自动机有两个步骤: 把所有的模式串建成一颗 Trie 树。 用 KMP 阅读全文
posted @ 2024-08-18 17:07 Zctf1088 阅读(54) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示