摘要: E001 爬楼梯方案数 有损坏的楼梯 E002 最小花费爬楼梯 单调队列优化DP 阅读全文
posted @ 2026-03-27 21:36 tingshuo2917 阅读(1) 评论(0) 推荐(0)
摘要: 前缀函数 S001 【模板】从前缀函数到KMP应用 字符串匹配 字符串周期 S002 字符串构造 最长相等真前后缀 字符串重叠 CF1029A 阅读全文
posted @ 2026-03-04 09:08 tingshuo2917 阅读(5) 评论(0) 推荐(0)
摘要: B003 找循环节 建图 ABC167D 二分 & 二分答案 双指针 B002 排序 双指针 哈希表 两数之和到K数之和 1640~1642 CSES 贪心 前置知识:排序,双指针等技巧。数据结构如优先队列的用法。 B001 排序贪心 最大不相交区间数 区间选点 阅读全文
posted @ 2026-02-26 14:01 tingshuo2917 阅读(6) 评论(0) 推荐(0)
摘要: 并查集 D006 【模板】并查集 D007 并查集基础题集(上七题) 树状数组 D001 单修区查 单查区修 区查区修【模板】树状数组 D002 二维偏序 逆序对 P1908 逆序对 D003 偏序问题 顺序对 ABC441E A > B substring 二叉堆 D004 二叉堆 序列合并 P1 阅读全文
posted @ 2026-02-24 12:29 tingshuo2917 阅读(4) 评论(0) 推荐(0)
摘要: 拓扑排序 前置知识:有的题目需要一些 dp 基础 需要掌握:DAG 上 dp,拓扑排序唯一性和判环 易错点:有重边时,加边与加入度要强行绑定!!! G004 DAG上DP P1685 游览 P4017 最大食物链计数 - 洛谷 G006 拓扑排序性质 字典建图 火星词典问题 P6491 COCI20 阅读全文
posted @ 2026-02-23 21:35 tingshuo2917 阅读(6) 评论(0) 推荐(0)
摘要: AWC Beta0035B 当你用 i = bisect_left(b, x) 得到下标后,会有三种情况: i = 0:说明 x 比列表里所有数都小,最接近的就是第一个数 b[0]。 i = len(b):说明 x 比列表里所有数都大,最接近的就是最后一个数 b[-1]。 在中间:此时 x 处于 b 阅读全文
posted @ 2026-03-27 22:45 tingshuo2917 阅读(5) 评论(0) 推荐(0)
摘要: 在这类问题中,我们的目标不是方案数(累加),而是权重的最优值(在范围内选最值)。跟据花费的不同,最小子问题也有差异。 类型一:花费为绝对值差 常见描述为:从 \(i\) 跳到 \(j\) ,花费为 \(|h_i-h_j|\) 。 Frog 1 - AtCoder 定义状态:dp[i] 为到达第 \( 阅读全文
posted @ 2026-03-27 22:23 tingshuo2917 阅读(1) 评论(0) 推荐(0)
摘要: 爬楼梯问题是动态规划的最经典的入门模型。它的核心思想是:要到达当前位置,它可以从以前的那个位置跳(转移)过来。 对于求方案数的经典模型可以总结为: 定义状态: dp[i] 为到达第 \(i\) 级楼梯的方案数。 最小子问题:d[0] = 1 ,这里需要注意是从第 \(0\) 阶到第 \(n\) 阶, 阅读全文
posted @ 2026-03-27 17:50 tingshuo2917 阅读(2) 评论(0) 推荐(0)
摘要: B003 找循环节 建图 ABC167D 模板题: ABC167D 不需要建图 模板题:AWC Beta0025D 需要建函数图 这道题目需要先建图。建一个函数图 nxt 数组,建完后寻找循环节。这里重点讲解如何寻找循环节。 从起点出发在经过一条链后才可能进入到环中,所以这个图结构也可以称为基环树或 \(\rho\) 形图 。 关键是找到环 阅读全文
posted @ 2026-03-17 22:06 tingshuo2917 阅读(5) 评论(0) 推荐(0)
摘要: D006 【模板】并查集 并查集是非常灵活和高效的数据结构,常见应用是维护无向图的连通分量个数、大小,最小生成树的 Kruskal 算法和最近公共祖先等。 并查集维护了若干个不相交的集合,每个集合通过一棵树来组织,根节点为该集合的代表。 三个基本操作: init(n) :初始化含有 \(n\) 个集合的并查集,每个集合的代表 阅读全文
posted @ 2026-03-04 20:58 tingshuo2917 阅读(54) 评论(4) 推荐(0)
摘要: CF1029A - CodeForces 题意:给定一个字符串 \(t\) 构造最小的一个字符串 \(s\) ,要求字符串 \(s\) 恰好有 \(k\) 个子串等于 \(t\) 。 第一眼想到的是周期。但是有的情况有重叠不能直接将 \(t\) 复制 \(k\) 份。这就不是最小了,那么如何求最小呢 阅读全文
posted @ 2026-03-04 09:01 tingshuo2917 阅读(6) 评论(0) 推荐(0)
摘要: 这篇博客为总结的解题流程和模板,如果想要算法具体的原理和数学证明的话请参考:Prefix function. Knuth–Morris–Pratt algorithm 1753 String Matching - CSES 模式串匹配模版 1732 Finding Borders - CSES 求出 阅读全文
posted @ 2026-03-03 23:02 tingshuo2917 阅读(64) 评论(0) 推荐(0)
摘要: P1670 [USACO04DEC] Tree Cutting S - 洛谷 树的重心模版,题面意思即是定义二。 P1395 会议 - 洛谷 树的重心模版。 P2986 [USACO10MAR] Great Cow Gathering G - 洛谷 树的带权重心。 树的重心有如下三种定义,求出来的点 阅读全文
posted @ 2026-03-01 22:09 tingshuo2917 阅读(12) 评论(0) 推荐(0)