Loading

摘要: 树链剖分 前言 我认为树链剖分是一种工具而不是数据结构 它能让你处理树上的链的操作 感觉像是 序列 $\rightarrow$ 树 的一种媒介,序列问题 $+$ 树剖 $=$ 树上问题 是这样没错了 模板P3384 题意: 给你一颗树,需要支持以下操作: 1 x y z,表示将树从 $x$ 到 $y 阅读全文
posted @ 2022-07-02 12:36 Into_qwq 阅读(3) 评论(0) 推荐(0) 编辑
摘要: 线段树+树状数组 线段树能解决的问题: 单点修改(加),区间加、乘、推平,单点(区间)查询最大(小)值、和、平(立)方和、$gcd$、最大子段和 树状数组能解决的问题: 区间修改单点查询,单点修改区间查询,通过维护值域求大于等于当前值的数的个数(可用于求逆序对) P5278 题意: 给你一个序列,要 阅读全文
posted @ 2022-07-02 12:35 Into_qwq 阅读(16) 评论(0) 推荐(0) 编辑
摘要: exkmp(Z函数) 题 题意: 给定两个字符串 A B,要求出两个数组: B 与 B 的每一个后缀的 LCP 长度 (next) B 与 A 的每一个后缀的 LCP 长度 (extend) 求 $\operatorname{xor}{i=0}^{n-1} i \times (nxt_i + 1)$ 阅读全文
posted @ 2022-07-02 12:31 Into_qwq 阅读(46) 评论(0) 推荐(0) 编辑
摘要: 最小表示法 题意 : 给你一个字符串 a , 找出字符串 a 的的循环同构串中字典序最小的一个 循环同构串 : 把字符串 a 从任意一个地方切开,将两部分交换位置,重新首尾相连形成的串 算法 : 定义指针 i , j , 匹配长度 k 初始 i=0,j=1,k=0 比较 a[i+k] 和 a[j+k 阅读全文
posted @ 2022-07-02 12:29 Into_qwq 阅读(14) 评论(0) 推荐(0) 编辑
摘要: Manacher 题意 : 求最长回文串 预处理 : 奇回文串的对称中心是中间的字符,偶回文串对称中心是中间两个字符的空隙处,若分开处理很麻烦,因此在每两个字符中间插入一个字符|使得对称中心都为一个字符 算法 : 定义 p[i] : 以 i 为回文中心的最长回文半径 ( p[i]-1 为最长回文串的 阅读全文
posted @ 2022-07-02 12:24 Into_qwq 阅读(13) 评论(0) 推荐(0) 编辑