摘要: Hall 定理 学习笔记 Hall 定理 对于一个左部有 \(x\) 个点,右部有 \(y\) 个点的二分图(\(x\le y\))的完备匹配是指,左部所有点都被匹配。 Hall 定理给出这个二分图存在完备匹配的充要条件:当且仅当对于左部点点集 \(L\) 的任意子集 \(S\) 满足 \(|S|\ 阅读全文
posted @ 2025-08-14 14:30 dengchengyu 阅读(33) 评论(0) 推荐(0)
摘要: Miller-Rabin 素性测试 & Pollard-Rho 算法 学习笔记 素性测试 判断一个数是否是素数。 试除法 一种确定性算法。枚举 \([1,\sqrt n]\) 的每个数检验能否除 \(n\)。复杂度 \(O(\sqrt n)\)。 Fermat 素性测试 简单的概率性素数检验。根据费 阅读全文
posted @ 2025-08-13 20:54 dengchengyu 阅读(27) 评论(0) 推荐(0)
该文被密码保护。 阅读全文
posted @ 2025-08-13 16:45 dengchengyu 阅读(0) 评论(0) 推荐(0)
该文被密码保护。 阅读全文
posted @ 2025-08-10 22:19 dengchengyu 阅读(0) 评论(0) 推荐(0)
摘要: 可持久化WBLT 学习笔记 什么是 WBLT WBLT 是一种 Leafy 的平衡二叉树,即序列中的元素都挂在叶子处,而非叶节点则处理子树内叶子的信息合并,线段树就是典型的 Leafy 树。每个非叶节点都有两个儿子,不难发现对于长为 \(n\) 序列,其 WBLT 有 \(2n-1\) 个节点。 W 阅读全文
posted @ 2025-08-05 21:58 dengchengyu 阅读(50) 评论(0) 推荐(0)
摘要: 2025-07-11 总结 小R的旅行 Tag:点分治、倍增。 考虑从 \(u\) 走到 \(v\) 过程中,每条边的花费即此前 \(p_i\) 的最小值。那么对于链的情况,可以找到一个点往上或往下第一个 \(p_i\) 比它小的点,查询时用倍增跳即可。 现在考虑树,从 \(u\) 走到 LCA 依 阅读全文
posted @ 2025-07-12 10:42 dengchengyu 阅读(32) 评论(0) 推荐(0)
摘要: 2025-07-10 总结 Jzoj8622. 旋转排序(arrange) 首先判无解:考虑把方格黑白染色,发现旋转只是交换黑与黑、白与白,所以如果给定矩形奇偶性与目标矩形不同则可判定无解。当然这只是有解的必要条件,剩余的条件我们暂且不考虑。 对于 \(n=3\),有四种情况。对于 \(n=4\) 阅读全文
posted @ 2025-07-11 07:57 dengchengyu 阅读(11) 评论(0) 推荐(0)
摘要: 回文树(回文自动机) 学习笔记 回文自动机可以存储一个字符串的所有回文子串,根据 Manacher 的过程我们可以知道一个字符串的回文子串个数是 \(O(n)\) 的。 结构 回文自动机的每个节点表示以某个位置结尾的最长回文子串。 回文自动机有两种边,转移边 \(tr\) 和失配边 \(fail\) 阅读全文
posted @ 2025-07-09 15:11 dengchengyu 阅读(26) 评论(0) 推荐(0)
摘要: 2025年6月杂题集 P5101 [JOI 2017 Final] 绳 / Rope 黑、结论。 P5103 [JOI 2016 Final] 断层 / Geologic Fault 黑、旋转坐标系、时光倒流、树状数组。 P9531 [JOISC 2022] 复兴计划 黑、贪心、动态 MST、增量构 阅读全文
posted @ 2025-06-04 22:39 dengchengyu 阅读(10) 评论(0) 推荐(0)
摘要: 2025年4&5月杂题集 目录 P6780 [Ynoi2009] pmrllcsrms([EC Final 2021] Vacation) 黑、线段树、分块。 P4208 [JSOI2008] 最小生成树计数 紫、暴力。 P3199 [HNOI2009] 最小圈 紫、分数规划、SPFA 判负环。 P 阅读全文
posted @ 2025-05-29 22:10 dengchengyu 阅读(29) 评论(0) 推荐(0)
摘要: Slope Trick 总结 Slope Trick Slope Trick 用于维护凸性的分段一次函数,且每一段一次函数的斜率满足为整数且级大小为 \(O(n)\)。 使用 Slope Trick 可以方便地求函数的最值、对后缀取最值、给全局加上一次函数或绝对值函数,要保证操作前后函数都为凸性。 阅读全文
posted @ 2025-05-21 22:16 dengchengyu 阅读(163) 评论(0) 推荐(0)
摘要: 扩展 KMP(Z 函数)& Manacher 学习笔记 以下字符串从 \(1\) 开始标号。 扩展 KMP(Z 函数) 例题。求字符串 \(a\) 与 \(a\) 的每一个后缀 \(i\) 的 LCP \(z_i\),求字符串 \(a\) 与 \(b\) 的每一个后缀 \(i\) 的 LCP \(p 阅读全文
posted @ 2025-04-19 10:15 dengchengyu 阅读(30) 评论(0) 推荐(0)
摘要: 后缀数组 以下,我们将字符串的元素从 \(1\) 开始标号。后缀 \(i\) 表示以 \(i\) 开头的后缀。 定义 记 \(sa_i\) 表示将所有后缀按字典序排序后,第 \(i\) 小后缀的标号。 记 \(rk_i\) 表示后缀 \(i\) 的排名。 后缀排序 两只 log 的做法 我们采用倍增 阅读全文
posted @ 2025-04-17 16:25 dengchengyu 阅读(22) 评论(0) 推荐(0)
摘要: 基数排序 一种非比较的排序算法。我们把每个元素拆成 \(k\) 个关键字。然后有两种排序方式: MSD,从第 \(1\) 关键字到第 \(k\) 关键字依次排序。 LSD,从第 \(k\) 关键字到第 \(1\) 关键字一次排序。 这里对于两个元素 \(a,b\) 判断 \(a<b\) 的方法是,找 阅读全文
posted @ 2025-04-14 22:13 dengchengyu 阅读(28) 评论(0) 推荐(0)
摘要: 定义 后缀自动机是一个 DAG,边带权(权值是一个字符),有一些节点称作结束节点,从根节点到结束节点的任意路径构成原字符串的所有后缀。由于后缀的前缀为子串,于是从根节点到任意节点的路径构成原字符串的所有子串。 后缀自动机上每个节点的每种边权的出边最多一条,这意味着后缀自动机上从根节点出发的每条路径与 阅读全文
posted @ 2025-04-06 17:12 dengchengyu 阅读(53) 评论(0) 推荐(0)
摘要: 2025年3月杂题集 目录 P6623 [省选联考 2020 A 卷] 树 P6018 [Ynoi2010] Fusion tree AT_abc391_g [ABC391G] Many LCS P10614 BZOJ3864 Hero meet devil P11844 [USACO25FEB] 阅读全文
posted @ 2025-03-29 19:01 dengchengyu 阅读(37) 评论(0) 推荐(0)
摘要: ABC293Ex & ABC298Ex & ABC294Ex 题解 ABC293Ex 题意:用若干条颜色路径覆盖树,使得任意路径的颜色数的最大值最小。 首先可以考虑二分答案 \(K\),变成判定性问题。 考虑树形 DP,设 \(f_{x,0/1/2}\) 表示 \(x\) 子树内的「任意路径的颜色数 阅读全文
posted @ 2025-03-17 22:36 dengchengyu 阅读(37) 评论(0) 推荐(0)
该文被密码保护。 阅读全文
posted @ 2025-03-15 16:46 dengchengyu 阅读(1) 评论(0) 推荐(0)
摘要: AtCoder ARC194 题解 前言 前四题时自己通过的,最后一题题解写得很清楚,就很快通过了。 A - Operations on a Stack 发现如果操作序列是 add-add-del-del 那么可以转化为 add-del-add-del,它们的贡献是一样的。 即我们现在有两种操作:选 阅读全文
posted @ 2025-03-11 22:12 dengchengyu 阅读(150) 评论(0) 推荐(0)
摘要: abc396_g & CF662C 题解 做 abc 做到了原题。 考虑暴力,我们枚举每一列是否翻转,然后每一行的贡献就是 \(0,1\) 个数的最小值,时间复杂度 \(O(n2^m)\)。 我们把上述东西写成式子,设 \(a_i\) 为行的初始状态为 \(i\) 的行数,\(b_i\) 为 \(i 阅读全文
posted @ 2025-03-08 21:43 dengchengyu 阅读(58) 评论(0) 推荐(0)
该文被密码保护。 阅读全文
posted @ 2025-03-08 21:35 dengchengyu 阅读(1) 评论(0) 推荐(0)
摘要: 2025年我新学的东西 DP 05-19 Slope Trick 08-07 Knuth 决策单调性优化。 字符串 04-06 SAM 后缀自动机。 04-17 \(O(n\log n)\) 后缀排序。 04-19 扩展 KMP。 04-19 Manacher。 07-09 回文自动机(回文树) 0 阅读全文
posted @ 2025-03-06 22:18 dengchengyu 阅读(50) 评论(0) 推荐(0)
摘要: 最小割:最大权闭合子图 最大权闭合子图 给一个 DAG,你要选一个子图,如果一个点被选则要求它的所有后继节点都必须选,求可选的合法子图的最大权。 最小割模型 我们这样建模: 对于边 \(u\to v\),连一条 \(u\to v\) 的容量为 \(\inf\) 的边。 对于 \(val_x\ge 0 阅读全文
posted @ 2025-03-04 22:07 dengchengyu 阅读(27) 评论(0) 推荐(0)
摘要: GDOI2025 游记 day-0 早上训练,开了一个会,写了一些注意事项: 先写暴力,可以验证题意,也能方便对拍。 不要对着样例硬调,可以自己造一些样例,样例是给你验证正确性的,不是用来调试的。 不要想过长时间,也不要调试过长时间,特别是第一题,不要想着自己一定要过第一题。 题目难度不一定递增,每 阅读全文
posted @ 2025-02-28 11:36 dengchengyu 阅读(51) 评论(0) 推荐(0)
摘要: 线段树:区间历史和 & 区间历史最值 & 区间最值操作 区间历史和 例题:Loj#193.线段树历史和。 一个数列,需要支持区间加、区间求和、区间求历史和。 矩阵乘法 每个点存 \(len,s,h\) 分别表示区间长度、区间和、区间历史和。用一个行向量表示这些信息。 区间加 \(v\) 则有转移,右 阅读全文
posted @ 2025-02-21 22:32 dengchengyu 阅读(418) 评论(0) 推荐(5)
该文被密码保护。 阅读全文
posted @ 2025-02-14 15:56 dengchengyu 阅读(26) 评论(0) 推荐(0)
摘要: FWT 学习笔记 我们要计算如下式子,其中 \(\otimes\) 是一种位运算,这个式子又叫做位运算卷积。 \[C_i=\sum _{j\otimes k=i} A_j\times B_k \]暴力枚举可以做到 \(O(n^2)\),可以使用 \(FWT\) 做到 \(O(n\log n)\)。 阅读全文
posted @ 2025-02-13 21:29 dengchengyu 阅读(24) 评论(0) 推荐(0)
摘要: 2025年2月杂题集 目录 P5904 [POI 2014] HOT-Hotels 加强版 P10085 [GDKOI2024 提高组] 染色 P1935 [国家集训队] 圈地计划 [ARC107F] Sum of Abs P9878 [EC Final 2021] Check Pattern is 阅读全文
posted @ 2025-02-11 16:29 dengchengyu 阅读(92) 评论(0) 推荐(0)
摘要: 2025寒假后训练总结 2025-02-05 今天一早返校,困困。寒假十天有点玩脱了,从没学习过,WC 和 THUWC 的游记还没写。 今天省选组题感觉非常有趣,但也很难就是了。 第一题是给定排列和用 XOR-SHIFT-64 生成的随机数生成方式,然后求随机种子。我首先倒推出每个 \(i\) 操作 阅读全文
posted @ 2025-02-11 16:28 dengchengyu 阅读(47) 评论(0) 推荐(0)
摘要: P10200 [湖北省选模拟 2024] 花神诞日 题解 首先注意到一个集合中两两异或和的最小值就是,排序后相邻两个数异或和的最小值。证明可以考虑放到 01-Trie 上,从高往低位建树,求一个数与之异或的最小值,就是使高位相同位数尽可能多,则就是 01-Trie 上的前一个叶子或后一个叶子。 由此 阅读全文
posted @ 2025-01-11 15:23 dengchengyu 阅读(25) 评论(0) 推荐(0)
摘要: 2025.01.10 杂题记录 CF1998E2 这题是求能否吃完,而不是最多吃多少个。 首先如果 \(x=n\),那么是经典问题,每次往左右二分一个位置扩展,每次扩展两次和都会翻倍,复杂度就是 \(O(n\log n\log V)\)。 我们考虑每个起始点对每个 \(f(i)\) 的贡献。我们每次 阅读全文
posted @ 2025-01-10 21:50 dengchengyu 阅读(19) 评论(0) 推荐(0)
摘要: 线段树分治-学习笔记 阅前须知:本文给出了线段树分治的一道例题以及多道习题,同时给出了部分实现的代码,帮助学习线段树分治。 总述 线段树分治是一种离线算法,在于把修改挂在线段树的节点上,通过遍历线段树求出每个叶子节点的答案,以减小复杂度。 例题 P5787 二分图 题目大意:\(n\) 个点的图上, 阅读全文
posted @ 2025-01-10 21:49 dengchengyu 阅读(49) 评论(0) 推荐(0)
摘要: [NOISG2022 Qualification] Dragonfly Solution in O(d log d) 提供一个使用线段树合并、栈、树状数组的严格单 \(\log\) 离线做法。 题目大意:给你一棵树,每个点有权值和颜色,每次问你一个从 \(1\) 开始的路径,求权值不为 \(0\) 阅读全文
posted @ 2025-01-10 21:41 dengchengyu 阅读(45) 评论(0) 推荐(0)
该文被密码保护。 阅读全文
posted @ 2025-01-09 18:47 dengchengyu 阅读(1) 评论(0) 推荐(0)
该文被密码保护。 阅读全文
posted @ 2025-01-08 19:19 dengchengyu 阅读(0) 评论(0) 推荐(0)
摘要: [Ynoi2016] 镜中的昆虫 题解 好题值得一做。 题目大意:给一个序列,有若干个离线询问,每次可以区间推平或询问区间内的颜色个数,数据范围是 \(10^5\) 级别。 解题思路:我们可以先考虑一个弱化版,每次是单点修改怎么做,类似于 CF848C。 我们考虑维护出每一个位置上一个与它相等的位置 阅读全文
posted @ 2025-01-08 11:18 dengchengyu 阅读(27) 评论(0) 推荐(0)
摘要: 2025.01.07 杂题记录 今天是好题选讲,顺便做了一些别的题目。 P3380 【模板】树套树 好,我终于搞明白树套树是怎么回事了,以前一直没做大概是因为平衡树好不太熟悉。 题目大意就是把普通平衡树的各种操作放在序列上,加上区间的限制。 树套树最普遍的做法就是线段树套平衡树。 考虑对线段树上的每 阅读全文
posted @ 2025-01-08 06:59 dengchengyu 阅读(32) 评论(0) 推荐(0)
摘要: atcoder 杂题 #05 abc340_g Leaf Color abc340_f F - S = 1 abc361_g Go Territory abc386_f Operate K abc340_g 独立想出了这道题。 如果我们确定了子图的叶子,那么这个子图就确定了。又由于叶子的颜色要相同, 阅读全文
posted @ 2025-01-05 21:17 dengchengyu 阅读(23) 评论(0) 推荐(0)
摘要: NOI Linux 2.0 竞赛环境食用指北 终端 使用 Ctrl+Alt+T 在当前登录用户的目录 ~ 中打开终端,也可以在文件夹中 右键 或 Shift+右键 在当前文件夹打开终端。 运行可执行文件需要加 ./,例如 ./<filename>。注意 Linux 中可执行文件是没有后缀名的。 mk 阅读全文
posted @ 2025-01-04 19:17 dengchengyu 阅读(217) 评论(0) 推荐(0)
该文被密码保护。 阅读全文
posted @ 2025-01-04 17:09 dengchengyu 阅读(0) 评论(0) 推荐(0)