diff --git a/site/public/llms.txt b/site/public/llms.txt
index dc36f77..fb2944d 100644
--- a/site/public/llms.txt
+++ b/site/public/llms.txt
@@ -19,40 +19,40 @@
## 背包 DP(A)
- [背包 DP · DP大师](https://dp.round1.cc/part/a): 背包 DP学习路径以“容量受限下的取舍:物品件数属性决定了背包的谱系。”为主线,串联 9 门课程的状态模型、转移顺序、可视化验证与配套题目。(最近更新:2026-08-27T05:20:51.219Z)
-- [01 背包 · 背包 DP · DP大师](https://dp.round1.cc/part/a/01): 01 背包课程回答“每件物品只能取一次时,为什么容量必须逆序更新”。内容以取或不取·一维逆推·恰好装满为主线,配合逐步推导、可编辑演示、例题与练习形成可复查的学习闭环。(最近更新:2026-08-27T05:21:25.030Z)
-- [完全背包 · 背包 DP · DP大师](https://dp.round1.cc/part/a/complete): 完全背包课程回答“物品可无限取用时,正序更新如何复用本轮状态”。内容以无限件·一维正推为主线,配合逐步推导、可编辑演示、例题与练习形成可复查的学习闭环。(最近更新:2026-08-27T05:21:25.030Z)
-- [多重背包 · 背包 DP · DP大师](https://dp.round1.cc/part/a/multiple): 多重背包课程回答“有限件物品怎样从朴素枚举优化到二进制或单调队列”。内容以朴素·二进制·单调队列为主线,配合逐步推导、可编辑演示、例题与练习形成可复查的学习闭环。(最近更新:2026-08-27T05:21:25.033Z)
-- [分组背包 · 背包 DP · DP大师](https://dp.round1.cc/part/a/group): 分组背包课程回答“每组至多选一件时,如何隔离组内选择”。内容以每组至多选一件为主线,配合逐步推导、可编辑演示、例题与练习形成可复查的学习闭环。(最近更新:2026-08-27T05:21:25.032Z)
-- [混合背包 · 背包 DP · DP大师](https://dp.round1.cc/part/a/mixed): 混合背包课程回答“01、完全和多重物品怎样共用一套转移框架”。内容以01/完全/多重同题为主线,配合逐步推导、可编辑演示、例题与练习形成可复查的学习闭环。(最近更新:2026-08-27T05:21:25.032Z)
-- [二维费用背包 · 背包 DP · DP大师](https://dp.round1.cc/part/a/cost2d): 二维费用背包课程回答“同时受两种容量约束时,状态维度与枚举顺序如何设计”。内容以两种费用同时受限为主线,配合逐步推导、可编辑演示、例题与练习形成可复查的学习闭环。(最近更新:2026-08-27T05:21:25.030Z)
-- [有依赖的背包 · 背包 DP · DP大师](https://dp.round1.cc/part/a/dep): 有依赖的背包课程回答“带主件附件依赖的选择怎样转化为合法组合”。内容以主件-附件·依赖→分组为主线,配合逐步推导、可编辑演示、例题与练习形成可复查的学习闭环。(最近更新:2026-08-27T05:21:25.031Z)
-- [背包综合变形 · 背包 DP · DP大师](https://dp.round1.cc/part/a/variant): 背包综合变形课程回答“背包模型如何扩展到计数、撤销和方案恢复”。内容以方案数·撤销·具体方案为主线,配合逐步推导、可编辑演示、例题与练习形成可复查的学习闭环。(最近更新:2026-08-27T05:21:25.034Z)
+- [01 背包 · 背包 DP · DP大师](https://dp.round1.cc/part/a/01): 01 背包课程回答“每件物品只能取一次时,为什么容量必须逆序更新”。内容以取或不取·一维逆推·恰好装满为主线,配合逐步推导、可编辑演示、例题与练习形成可复查的学习闭环。(最近更新:2026-08-27T06:00:55.302Z)
+- [完全背包 · 背包 DP · DP大师](https://dp.round1.cc/part/a/complete): 完全背包课程回答“物品可无限取用时,正序更新如何复用本轮状态”。内容以无限件·一维正推为主线,配合逐步推导、可编辑演示、例题与练习形成可复查的学习闭环。(最近更新:2026-08-27T06:00:55.302Z)
+- [多重背包 · 背包 DP · DP大师](https://dp.round1.cc/part/a/multiple): 多重背包课程回答“有限件物品怎样从朴素枚举优化到二进制或单调队列”。内容以朴素·二进制·单调队列为主线,配合逐步推导、可编辑演示、例题与练习形成可复查的学习闭环。(最近更新:2026-08-27T06:00:55.302Z)
+- [分组背包 · 背包 DP · DP大师](https://dp.round1.cc/part/a/group): 分组背包课程回答“每组至多选一件时,如何隔离组内选择”。内容以每组至多选一件为主线,配合逐步推导、可编辑演示、例题与练习形成可复查的学习闭环。(最近更新:2026-08-27T06:00:55.302Z)
+- [混合背包 · 背包 DP · DP大师](https://dp.round1.cc/part/a/mixed): 混合背包课程回答“01、完全和多重物品怎样共用一套转移框架”。内容以01/完全/多重同题为主线,配合逐步推导、可编辑演示、例题与练习形成可复查的学习闭环。(最近更新:2026-08-27T06:00:55.302Z)
+- [二维费用背包 · 背包 DP · DP大师](https://dp.round1.cc/part/a/cost2d): 二维费用背包课程回答“同时受两种容量约束时,状态维度与枚举顺序如何设计”。内容以两种费用同时受限为主线,配合逐步推导、可编辑演示、例题与练习形成可复查的学习闭环。(最近更新:2026-08-27T06:00:55.302Z)
+- [有依赖的背包 · 背包 DP · DP大师](https://dp.round1.cc/part/a/dep): 有依赖的背包课程回答“带主件附件依赖的选择怎样转化为合法组合”。内容以主件-附件·依赖→分组为主线,配合逐步推导、可编辑演示、例题与练习形成可复查的学习闭环。(最近更新:2026-08-27T06:00:55.302Z)
+- [背包综合变形 · 背包 DP · DP大师](https://dp.round1.cc/part/a/variant): 背包综合变形课程回答“背包模型如何扩展到计数、撤销和方案恢复”。内容以方案数·撤销·具体方案为主线,配合逐步推导、可编辑演示、例题与练习形成可复查的学习闭环。(最近更新:2026-08-27T06:00:55.302Z)
- [辨析:分数背包=贪心 · 背包 DP · DP大师](https://dp.round1.cc/part/a/fractional): 辨析:分数背包=贪心课程回答“为什么可分割物品属于贪心而不是 01 背包”。内容以可分割⇒贪心 vs 整取⇒DP为主线,配合逐步推导、可编辑演示、例题与练习形成可复查的学习闭环。(最近更新:2026-08-27T05:21:25.031Z)
## 线性 DP(B)
- [线性 DP · DP大师](https://dp.round1.cc/part/b): 线性 DP学习路径以“把问题排成一条推进的序列,dp[i] 只依赖更早的状态。”为主线,串联 7 门课程的状态模型、转移顺序、可视化验证与配套题目。(最近更新:2026-08-27T05:20:51.219Z)
-- [路径型 / 递推入门 · 线性 DP · DP大师](https://dp.round1.cc/part/b/path): 路径型 / 递推入门课程回答“沿序列或网格推进时,如何定义最小充分状态”。内容以数字三角形·过河卒·方格取数为主线,配合逐步推导、可编辑演示、例题与练习形成可复查的学习闭环。(最近更新:2026-08-27T05:21:25.022Z)
-- [最大子段和 · 线性 DP · DP大师](https://dp.round1.cc/part/b/maxseg): 最大子段和课程回答“如何用一个局部状态维护最大连续子段”。内容以Kadane·环形·两段不相交为主线,配合逐步推导、可编辑演示、例题与练习形成可复查的学习闭环。(最近更新:2026-08-27T05:21:25.035Z)
-- [最长上升子序列 LIS · 线性 DP · DP大师](https://dp.round1.cc/part/b/lis): 最长上升子序列 LIS课程回答“最长上升子序列如何从二次转移优化到对数查找”。内容以O(n²) 与 O(n log n)·导弹拦截为主线,配合逐步推导、可编辑演示、例题与练习形成可复查的学习闭环。(最近更新:2026-08-27T05:21:25.037Z)
-- [最长公共子序列 LCS · 线性 DP · DP大师](https://dp.round1.cc/part/b/lcs): 最长公共子序列 LCS课程回答“两个序列的公共结构如何通过二维状态刻画”。内容以排列 LCS→LIS·计数为主线,配合逐步推导、可编辑演示、例题与练习形成可复查的学习闭环。(最近更新:2026-08-27T05:21:25.021Z)
-- [编辑距离 · 线性 DP · DP大师](https://dp.round1.cc/part/b/edit): 编辑距离课程回答“插入、删除和替换如何统一进编辑距离转移”。内容以删/插/改三向转移为主线,配合逐步推导、可编辑演示、例题与练习形成可复查的学习闭环。(最近更新:2026-08-27T05:21:25.020Z)
-- [线性状态机 DP · 线性 DP · DP大师](https://dp.round1.cc/part/b/fsm): 线性状态机 DP课程回答“带持有或选择限制的问题怎样画成有限状态机”。内容以受限选取·股票买卖为主线,配合逐步推导、可编辑演示、例题与练习形成可复查的学习闭环。(最近更新:2026-08-27T05:21:25.019Z)
-- [计数 / 划分型 · 线性 DP · DP大师](https://dp.round1.cc/part/b/count): 计数 / 划分型课程回答“计数与划分问题如何避免重复或遗漏方案”。内容以方案数·高精度·整数划分为主线,配合逐步推导、可编辑演示、例题与练习形成可复查的学习闭环。(最近更新:2026-08-27T05:21:25.036Z)
+- [路径型 / 递推入门 · 线性 DP · DP大师](https://dp.round1.cc/part/b/path): 路径型 / 递推入门课程回答“沿序列或网格推进时,如何定义最小充分状态”。内容以数字三角形·过河卒·方格取数为主线,配合逐步推导、可编辑演示、例题与练习形成可复查的学习闭环。(最近更新:2026-08-27T06:00:55.302Z)
+- [最大子段和 · 线性 DP · DP大师](https://dp.round1.cc/part/b/maxseg): 最大子段和课程回答“如何用一个局部状态维护最大连续子段”。内容以Kadane·环形·两段不相交为主线,配合逐步推导、可编辑演示、例题与练习形成可复查的学习闭环。(最近更新:2026-08-27T06:00:55.302Z)
+- [最长上升子序列 LIS · 线性 DP · DP大师](https://dp.round1.cc/part/b/lis): 最长上升子序列 LIS课程回答“最长上升子序列如何从二次转移优化到对数查找”。内容以O(n²) 与 O(n log n)·导弹拦截为主线,配合逐步推导、可编辑演示、例题与练习形成可复查的学习闭环。(最近更新:2026-08-27T06:00:55.302Z)
+- [最长公共子序列 LCS · 线性 DP · DP大师](https://dp.round1.cc/part/b/lcs): 最长公共子序列 LCS课程回答“两个序列的公共结构如何通过二维状态刻画”。内容以排列 LCS→LIS·计数为主线,配合逐步推导、可编辑演示、例题与练习形成可复查的学习闭环。(最近更新:2026-08-27T06:00:55.302Z)
+- [编辑距离 · 线性 DP · DP大师](https://dp.round1.cc/part/b/edit): 编辑距离课程回答“插入、删除和替换如何统一进编辑距离转移”。内容以删/插/改三向转移为主线,配合逐步推导、可编辑演示、例题与练习形成可复查的学习闭环。(最近更新:2026-08-27T06:00:55.302Z)
+- [线性状态机 DP · 线性 DP · DP大师](https://dp.round1.cc/part/b/fsm): 线性状态机 DP课程回答“带持有或选择限制的问题怎样画成有限状态机”。内容以受限选取·股票买卖为主线,配合逐步推导、可编辑演示、例题与练习形成可复查的学习闭环。(最近更新:2026-08-27T06:00:57.462Z)
+- [计数 / 划分型 · 线性 DP · DP大师](https://dp.round1.cc/part/b/count): 计数 / 划分型课程回答“计数与划分问题如何避免重复或遗漏方案”。内容以方案数·高精度·整数划分为主线,配合逐步推导、可编辑演示、例题与练习形成可复查的学习闭环。(最近更新:2026-08-27T06:00:55.302Z)
## 区间 DP(C)
- [区间 DP · DP大师](https://dp.round1.cc/part/c): 区间 DP学习路径以“dp[l][r] 表示区间最优,枚举分割/合并点,按长度递推。”为主线,串联 5 门课程的状态模型、转移顺序、可视化验证与配套题目。(最近更新:2026-08-27T05:20:51.219Z)
-- [石子合并(链形) · 区间 DP · DP大师](https://dp.round1.cc/part/c/stone): 石子合并(链形)课程回答“区间合并代价为何要按长度递增计算”。内容以区间合并基础模型为主线,配合逐步推导、可编辑演示、例题与练习形成可复查的学习闭环。(最近更新:2026-08-27T05:21:25.027Z)
-- [环形区间 DP · 区间 DP · DP大师](https://dp.round1.cc/part/c/ring): 环形区间 DP课程回答“环形区间怎样通过复制序列转化为链形区间”。内容以断环为链·能量项链为主线,配合逐步推导、可编辑演示、例题与练习形成可复查的学习闭环。(最近更新:2026-08-27T05:21:25.026Z)
-- [回文 / 括号 · 区间 DP · DP大师](https://dp.round1.cc/part/c/palindrome): 回文 / 括号课程回答“端点匹配如何组织回文与括号类转移”。内容以收缩扩展·端点匹配为主线,配合逐步推导、可编辑演示、例题与练习形成可复查的学习闭环。(最近更新:2026-08-27T05:21:25.025Z)
-- [加分二叉树型 · 区间 DP · DP大师](https://dp.round1.cc/part/c/tree): 加分二叉树型课程回答“枚举区间根节点时,子区间如何对应左右子树”。内容以枚举根·区间即子树为主线,配合逐步推导、可编辑演示、例题与练习形成可复查的学习闭环。(最近更新:2026-08-27T05:21:25.026Z)
-- [合并 / 删除类 · 区间 DP · DP大师](https://dp.round1.cc/part/c/merge): 合并 / 删除类课程回答“合并与删除过程怎样压缩成区间状态”。内容以2048·区间删除代价为主线,配合逐步推导、可编辑演示、例题与练习形成可复查的学习闭环。(最近更新:2026-08-27T05:21:25.028Z)
+- [石子合并(链形) · 区间 DP · DP大师](https://dp.round1.cc/part/c/stone): 石子合并(链形)课程回答“区间合并代价为何要按长度递增计算”。内容以区间合并基础模型为主线,配合逐步推导、可编辑演示、例题与练习形成可复查的学习闭环。(最近更新:2026-08-27T06:00:55.302Z)
+- [环形区间 DP · 区间 DP · DP大师](https://dp.round1.cc/part/c/ring): 环形区间 DP课程回答“环形区间怎样通过复制序列转化为链形区间”。内容以断环为链·能量项链为主线,配合逐步推导、可编辑演示、例题与练习形成可复查的学习闭环。(最近更新:2026-08-27T06:00:55.302Z)
+- [回文 / 括号 · 区间 DP · DP大师](https://dp.round1.cc/part/c/palindrome): 回文 / 括号课程回答“端点匹配如何组织回文与括号类转移”。内容以收缩扩展·端点匹配为主线,配合逐步推导、可编辑演示、例题与练习形成可复查的学习闭环。(最近更新:2026-08-27T06:00:55.302Z)
+- [加分二叉树型 · 区间 DP · DP大师](https://dp.round1.cc/part/c/tree): 加分二叉树型课程回答“枚举区间根节点时,子区间如何对应左右子树”。内容以枚举根·区间即子树为主线,配合逐步推导、可编辑演示、例题与练习形成可复查的学习闭环。(最近更新:2026-08-27T06:00:55.302Z)
+- [合并 / 删除类 · 区间 DP · DP大师](https://dp.round1.cc/part/c/merge): 合并 / 删除类课程回答“合并与删除过程怎样压缩成区间状态”。内容以2048·区间删除代价为主线,配合逐步推导、可编辑演示、例题与练习形成可复查的学习闭环。(最近更新:2026-08-27T06:00:55.302Z)
## 矩阵 DP(D)
- [矩阵 DP · DP大师](https://dp.round1.cc/part/d): 矩阵 DP学习路径以“两条主线:网格坐标上的 DP,与矩阵快速幂加速的递推。”为主线,串联 2 门课程的状态模型、转移顺序、可视化验证与配套题目。(最近更新:2026-08-27T05:20:51.219Z)
-- [网格 / 矩阵上的 DP · 矩阵 DP · DP大师](https://dp.round1.cc/part/d/grid): 网格 / 矩阵上的 DP课程回答“网格路径、最大正方形和双路径如何选择状态维度”。内容以路径·最大正方形·双线程为主线,配合逐步推导、可编辑演示、例题与练习形成可复查的学习闭环。(最近更新:2026-08-27T05:21:25.023Z)
+- [网格 / 矩阵上的 DP · 矩阵 DP · DP大师](https://dp.round1.cc/part/d/grid): 网格 / 矩阵上的 DP课程回答“网格路径、最大正方形和双路径如何选择状态维度”。内容以路径·最大正方形·双线程为主线,配合逐步推导、可编辑演示、例题与练习形成可复查的学习闭环。(最近更新:2026-08-27T06:00:55.302Z)
- [矩阵快速幂加速 · 矩阵 DP · DP大师](https://dp.round1.cc/part/d/matpow): 矩阵快速幂加速课程回答“线性递推怎样写成矩阵并用快速幂加速”。内容以递推→矩阵幂·O(k³log n)为主线,配合逐步推导、可编辑演示、例题与练习形成可复查的学习闭环。(最近更新:2026-08-27T05:21:25.038Z)
## 换根 DP(E)
@@ -76,8 +76,8 @@
- [状压 DP · DP大师](https://dp.round1.cc/part/g): 状压 DP学习路径以“状态是一个集合,用二进制整数表示;转移在 mask 间进行。”为主线,串联 5 门课程的状态模型、转移顺序、可视化验证与配套题目。(最近更新:2026-08-27T05:20:51.219Z)
- [棋盘 / 轮廓状压 · 状压 DP · DP大师](https://dp.round1.cc/part/g/board): 棋盘 / 轮廓状压课程回答“逐行棋盘约束怎样编码为兼容位掩码”。内容以互不侵犯·炮兵阵地为主线,配合逐步推导、可编辑演示、例题与练习形成可复查的学习闭环。(最近更新:2026-08-27T05:21:25.016Z)
-- [集合状压 / TSP · 状压 DP · DP大师](https://dp.round1.cc/part/g/tsp): 集合状压 / TSP课程回答“集合访问状态如何保证 Hamilton 路径不重不漏”。内容以最短 Hamilton·吃奶酪为主线,配合逐步推导、可编辑演示、例题与练习形成可复查的学习闭环。(最近更新:2026-08-27T05:21:25.017Z)
-- [状压 + 覆盖 · 状压 DP · DP大师](https://dp.round1.cc/part/g/cover): 状压 + 覆盖课程回答“几何覆盖选择怎样预处理成可转移的状态集合”。内容以愤怒的小鸟·宝藏为主线,配合逐步推导、可编辑演示、例题与练习形成可复查的学习闭环。(最近更新:2026-08-27T05:21:25.016Z)
+- [集合状压 / TSP · 状压 DP · DP大师](https://dp.round1.cc/part/g/tsp): 集合状压 / TSP课程回答“集合访问状态如何保证 Hamilton 路径不重不漏”。内容以最短 Hamilton·吃奶酪为主线,配合逐步推导、可编辑演示、例题与练习形成可复查的学习闭环。(最近更新:2026-08-27T06:00:55.302Z)
+- [状压 + 覆盖 · 状压 DP · DP大师](https://dp.round1.cc/part/g/cover): 状压 + 覆盖课程回答“几何覆盖选择怎样预处理成可转移的状态集合”。内容以愤怒的小鸟·宝藏为主线,配合逐步推导、可编辑演示、例题与练习形成可复查的学习闭环。(最近更新:2026-08-27T06:00:52.946Z)
- [综合技巧 · 状压 DP · DP大师](https://dp.round1.cc/part/g/subset): 综合技巧课程回答“子集枚举与计数变形有哪些可复用的位运算技巧”。内容以枚举子集·计数变形为主线,配合逐步推导、可编辑演示、例题与练习形成可复查的学习闭环。(最近更新:2026-08-27T05:21:25.017Z)
- [插头 DP · 状压 DP · DP大师](https://dp.round1.cc/part/g/plug): 插头 DP课程回答“轮廓线上的连通性怎样压缩为插头状态”。内容以轮廓线连通性为主线,配合逐步推导、可编辑演示、例题与练习形成可复查的学习闭环。(最近更新:2026-08-27T05:20:51.219Z)
diff --git a/site/public/route-summaries.json b/site/public/route-summaries.json
index e8926a0..48b572b 100644
--- a/site/public/route-summaries.json
+++ b/site/public/route-summaries.json
@@ -73,7 +73,7 @@
"title": "01 背包 · 背包 DP · DP大师",
"summary": "01 背包课程回答“每件物品只能取一次时,为什么容量必须逆序更新”。内容以取或不取·一维逆推·恰好装满为主线,配合逐步推导、可编辑演示、例题与练习形成可复查的学习闭环。",
"type": "lesson",
- "lastModified": "2026-08-27T05:21:25.030Z",
+ "lastModified": "2026-08-27T06:00:55.302Z",
"reviewedBy": "AzureL蔚澜算法",
"reviewStatus": "持续复核"
},
@@ -83,7 +83,7 @@
"title": "完全背包 · 背包 DP · DP大师",
"summary": "完全背包课程回答“物品可无限取用时,正序更新如何复用本轮状态”。内容以无限件·一维正推为主线,配合逐步推导、可编辑演示、例题与练习形成可复查的学习闭环。",
"type": "lesson",
- "lastModified": "2026-08-27T05:21:25.030Z",
+ "lastModified": "2026-08-27T06:00:55.302Z",
"reviewedBy": "AzureL蔚澜算法",
"reviewStatus": "持续复核"
},
@@ -93,7 +93,7 @@
"title": "多重背包 · 背包 DP · DP大师",
"summary": "多重背包课程回答“有限件物品怎样从朴素枚举优化到二进制或单调队列”。内容以朴素·二进制·单调队列为主线,配合逐步推导、可编辑演示、例题与练习形成可复查的学习闭环。",
"type": "lesson",
- "lastModified": "2026-08-27T05:21:25.033Z",
+ "lastModified": "2026-08-27T06:00:55.302Z",
"reviewedBy": "AzureL蔚澜算法",
"reviewStatus": "持续复核"
},
@@ -103,7 +103,7 @@
"title": "分组背包 · 背包 DP · DP大师",
"summary": "分组背包课程回答“每组至多选一件时,如何隔离组内选择”。内容以每组至多选一件为主线,配合逐步推导、可编辑演示、例题与练习形成可复查的学习闭环。",
"type": "lesson",
- "lastModified": "2026-08-27T05:21:25.032Z",
+ "lastModified": "2026-08-27T06:00:55.302Z",
"reviewedBy": "AzureL蔚澜算法",
"reviewStatus": "持续复核"
},
@@ -113,7 +113,7 @@
"title": "混合背包 · 背包 DP · DP大师",
"summary": "混合背包课程回答“01、完全和多重物品怎样共用一套转移框架”。内容以01/完全/多重同题为主线,配合逐步推导、可编辑演示、例题与练习形成可复查的学习闭环。",
"type": "lesson",
- "lastModified": "2026-08-27T05:21:25.032Z",
+ "lastModified": "2026-08-27T06:00:55.302Z",
"reviewedBy": "AzureL蔚澜算法",
"reviewStatus": "持续复核"
},
@@ -123,7 +123,7 @@
"title": "二维费用背包 · 背包 DP · DP大师",
"summary": "二维费用背包课程回答“同时受两种容量约束时,状态维度与枚举顺序如何设计”。内容以两种费用同时受限为主线,配合逐步推导、可编辑演示、例题与练习形成可复查的学习闭环。",
"type": "lesson",
- "lastModified": "2026-08-27T05:21:25.030Z",
+ "lastModified": "2026-08-27T06:00:55.302Z",
"reviewedBy": "AzureL蔚澜算法",
"reviewStatus": "持续复核"
},
@@ -133,7 +133,7 @@
"title": "有依赖的背包 · 背包 DP · DP大师",
"summary": "有依赖的背包课程回答“带主件附件依赖的选择怎样转化为合法组合”。内容以主件-附件·依赖→分组为主线,配合逐步推导、可编辑演示、例题与练习形成可复查的学习闭环。",
"type": "lesson",
- "lastModified": "2026-08-27T05:21:25.031Z",
+ "lastModified": "2026-08-27T06:00:55.302Z",
"reviewedBy": "AzureL蔚澜算法",
"reviewStatus": "持续复核"
},
@@ -143,7 +143,7 @@
"title": "背包综合变形 · 背包 DP · DP大师",
"summary": "背包综合变形课程回答“背包模型如何扩展到计数、撤销和方案恢复”。内容以方案数·撤销·具体方案为主线,配合逐步推导、可编辑演示、例题与练习形成可复查的学习闭环。",
"type": "lesson",
- "lastModified": "2026-08-27T05:21:25.034Z",
+ "lastModified": "2026-08-27T06:00:55.302Z",
"reviewedBy": "AzureL蔚澜算法",
"reviewStatus": "持续复核"
},
@@ -163,7 +163,7 @@
"title": "路径型 / 递推入门 · 线性 DP · DP大师",
"summary": "路径型 / 递推入门课程回答“沿序列或网格推进时,如何定义最小充分状态”。内容以数字三角形·过河卒·方格取数为主线,配合逐步推导、可编辑演示、例题与练习形成可复查的学习闭环。",
"type": "lesson",
- "lastModified": "2026-08-27T05:21:25.022Z",
+ "lastModified": "2026-08-27T06:00:55.302Z",
"reviewedBy": "AzureL蔚澜算法",
"reviewStatus": "持续复核"
},
@@ -173,7 +173,7 @@
"title": "最大子段和 · 线性 DP · DP大师",
"summary": "最大子段和课程回答“如何用一个局部状态维护最大连续子段”。内容以Kadane·环形·两段不相交为主线,配合逐步推导、可编辑演示、例题与练习形成可复查的学习闭环。",
"type": "lesson",
- "lastModified": "2026-08-27T05:21:25.035Z",
+ "lastModified": "2026-08-27T06:00:55.302Z",
"reviewedBy": "AzureL蔚澜算法",
"reviewStatus": "持续复核"
},
@@ -183,7 +183,7 @@
"title": "最长上升子序列 LIS · 线性 DP · DP大师",
"summary": "最长上升子序列 LIS课程回答“最长上升子序列如何从二次转移优化到对数查找”。内容以O(n²) 与 O(n log n)·导弹拦截为主线,配合逐步推导、可编辑演示、例题与练习形成可复查的学习闭环。",
"type": "lesson",
- "lastModified": "2026-08-27T05:21:25.037Z",
+ "lastModified": "2026-08-27T06:00:55.302Z",
"reviewedBy": "AzureL蔚澜算法",
"reviewStatus": "持续复核"
},
@@ -193,7 +193,7 @@
"title": "最长公共子序列 LCS · 线性 DP · DP大师",
"summary": "最长公共子序列 LCS课程回答“两个序列的公共结构如何通过二维状态刻画”。内容以排列 LCS→LIS·计数为主线,配合逐步推导、可编辑演示、例题与练习形成可复查的学习闭环。",
"type": "lesson",
- "lastModified": "2026-08-27T05:21:25.021Z",
+ "lastModified": "2026-08-27T06:00:55.302Z",
"reviewedBy": "AzureL蔚澜算法",
"reviewStatus": "持续复核"
},
@@ -203,7 +203,7 @@
"title": "编辑距离 · 线性 DP · DP大师",
"summary": "编辑距离课程回答“插入、删除和替换如何统一进编辑距离转移”。内容以删/插/改三向转移为主线,配合逐步推导、可编辑演示、例题与练习形成可复查的学习闭环。",
"type": "lesson",
- "lastModified": "2026-08-27T05:21:25.020Z",
+ "lastModified": "2026-08-27T06:00:55.302Z",
"reviewedBy": "AzureL蔚澜算法",
"reviewStatus": "持续复核"
},
@@ -213,7 +213,7 @@
"title": "线性状态机 DP · 线性 DP · DP大师",
"summary": "线性状态机 DP课程回答“带持有或选择限制的问题怎样画成有限状态机”。内容以受限选取·股票买卖为主线,配合逐步推导、可编辑演示、例题与练习形成可复查的学习闭环。",
"type": "lesson",
- "lastModified": "2026-08-27T05:21:25.019Z",
+ "lastModified": "2026-08-27T06:00:57.462Z",
"reviewedBy": "AzureL蔚澜算法",
"reviewStatus": "持续复核"
},
@@ -223,7 +223,7 @@
"title": "计数 / 划分型 · 线性 DP · DP大师",
"summary": "计数 / 划分型课程回答“计数与划分问题如何避免重复或遗漏方案”。内容以方案数·高精度·整数划分为主线,配合逐步推导、可编辑演示、例题与练习形成可复查的学习闭环。",
"type": "lesson",
- "lastModified": "2026-08-27T05:21:25.036Z",
+ "lastModified": "2026-08-27T06:00:55.302Z",
"reviewedBy": "AzureL蔚澜算法",
"reviewStatus": "持续复核"
},
@@ -233,7 +233,7 @@
"title": "石子合并(链形) · 区间 DP · DP大师",
"summary": "石子合并(链形)课程回答“区间合并代价为何要按长度递增计算”。内容以区间合并基础模型为主线,配合逐步推导、可编辑演示、例题与练习形成可复查的学习闭环。",
"type": "lesson",
- "lastModified": "2026-08-27T05:21:25.027Z",
+ "lastModified": "2026-08-27T06:00:55.302Z",
"reviewedBy": "AzureL蔚澜算法",
"reviewStatus": "持续复核"
},
@@ -243,7 +243,7 @@
"title": "环形区间 DP · 区间 DP · DP大师",
"summary": "环形区间 DP课程回答“环形区间怎样通过复制序列转化为链形区间”。内容以断环为链·能量项链为主线,配合逐步推导、可编辑演示、例题与练习形成可复查的学习闭环。",
"type": "lesson",
- "lastModified": "2026-08-27T05:21:25.026Z",
+ "lastModified": "2026-08-27T06:00:55.302Z",
"reviewedBy": "AzureL蔚澜算法",
"reviewStatus": "持续复核"
},
@@ -253,7 +253,7 @@
"title": "回文 / 括号 · 区间 DP · DP大师",
"summary": "回文 / 括号课程回答“端点匹配如何组织回文与括号类转移”。内容以收缩扩展·端点匹配为主线,配合逐步推导、可编辑演示、例题与练习形成可复查的学习闭环。",
"type": "lesson",
- "lastModified": "2026-08-27T05:21:25.025Z",
+ "lastModified": "2026-08-27T06:00:55.302Z",
"reviewedBy": "AzureL蔚澜算法",
"reviewStatus": "持续复核"
},
@@ -263,7 +263,7 @@
"title": "加分二叉树型 · 区间 DP · DP大师",
"summary": "加分二叉树型课程回答“枚举区间根节点时,子区间如何对应左右子树”。内容以枚举根·区间即子树为主线,配合逐步推导、可编辑演示、例题与练习形成可复查的学习闭环。",
"type": "lesson",
- "lastModified": "2026-08-27T05:21:25.026Z",
+ "lastModified": "2026-08-27T06:00:55.302Z",
"reviewedBy": "AzureL蔚澜算法",
"reviewStatus": "持续复核"
},
@@ -273,7 +273,7 @@
"title": "合并 / 删除类 · 区间 DP · DP大师",
"summary": "合并 / 删除类课程回答“合并与删除过程怎样压缩成区间状态”。内容以2048·区间删除代价为主线,配合逐步推导、可编辑演示、例题与练习形成可复查的学习闭环。",
"type": "lesson",
- "lastModified": "2026-08-27T05:21:25.028Z",
+ "lastModified": "2026-08-27T06:00:55.302Z",
"reviewedBy": "AzureL蔚澜算法",
"reviewStatus": "持续复核"
},
@@ -283,7 +283,7 @@
"title": "网格 / 矩阵上的 DP · 矩阵 DP · DP大师",
"summary": "网格 / 矩阵上的 DP课程回答“网格路径、最大正方形和双路径如何选择状态维度”。内容以路径·最大正方形·双线程为主线,配合逐步推导、可编辑演示、例题与练习形成可复查的学习闭环。",
"type": "lesson",
- "lastModified": "2026-08-27T05:21:25.023Z",
+ "lastModified": "2026-08-27T06:00:55.302Z",
"reviewedBy": "AzureL蔚澜算法",
"reviewStatus": "持续复核"
},
@@ -403,7 +403,7 @@
"title": "集合状压 / TSP · 状压 DP · DP大师",
"summary": "集合状压 / TSP课程回答“集合访问状态如何保证 Hamilton 路径不重不漏”。内容以最短 Hamilton·吃奶酪为主线,配合逐步推导、可编辑演示、例题与练习形成可复查的学习闭环。",
"type": "lesson",
- "lastModified": "2026-08-27T05:21:25.017Z",
+ "lastModified": "2026-08-27T06:00:55.302Z",
"reviewedBy": "AzureL蔚澜算法",
"reviewStatus": "持续复核"
},
@@ -413,7 +413,7 @@
"title": "状压 + 覆盖 · 状压 DP · DP大师",
"summary": "状压 + 覆盖课程回答“几何覆盖选择怎样预处理成可转移的状态集合”。内容以愤怒的小鸟·宝藏为主线,配合逐步推导、可编辑演示、例题与练习形成可复查的学习闭环。",
"type": "lesson",
- "lastModified": "2026-08-27T05:21:25.016Z",
+ "lastModified": "2026-08-27T06:00:52.946Z",
"reviewedBy": "AzureL蔚澜算法",
"reviewStatus": "持续复核"
},
diff --git a/site/public/sitemap.xml b/site/public/sitemap.xml
index d428c58..0330bfc 100644
--- a/site/public/sitemap.xml
+++ b/site/public/sitemap.xml
@@ -14,19 +14,19 @@
https://dp.round1.cc/part/a/01
- 2026-08-27T05:21:25.030Z
+ 2026-08-27T06:00:55.302Z
https://dp.round1.cc/part/a/complete
- 2026-08-27T05:21:25.030Z
+ 2026-08-27T06:00:55.302Z
https://dp.round1.cc/part/a/cost2d
- 2026-08-27T05:21:25.030Z
+ 2026-08-27T06:00:55.302Z
https://dp.round1.cc/part/a/dep
- 2026-08-27T05:21:25.031Z
+ 2026-08-27T06:00:55.302Z
https://dp.round1.cc/part/a/fractional
@@ -34,19 +34,19 @@
https://dp.round1.cc/part/a/group
- 2026-08-27T05:21:25.032Z
+ 2026-08-27T06:00:55.302Z
https://dp.round1.cc/part/a/mixed
- 2026-08-27T05:21:25.032Z
+ 2026-08-27T06:00:55.302Z
https://dp.round1.cc/part/a/multiple
- 2026-08-27T05:21:25.033Z
+ 2026-08-27T06:00:55.302Z
https://dp.round1.cc/part/a/variant
- 2026-08-27T05:21:25.034Z
+ 2026-08-27T06:00:55.302Z
https://dp.round1.cc/part/b
@@ -54,31 +54,31 @@
https://dp.round1.cc/part/b/count
- 2026-08-27T05:21:25.036Z
+ 2026-08-27T06:00:55.302Z
https://dp.round1.cc/part/b/edit
- 2026-08-27T05:21:25.020Z
+ 2026-08-27T06:00:55.302Z
https://dp.round1.cc/part/b/fsm
- 2026-08-27T05:21:25.019Z
+ 2026-08-27T06:00:57.462Z
https://dp.round1.cc/part/b/lcs
- 2026-08-27T05:21:25.021Z
+ 2026-08-27T06:00:55.302Z
https://dp.round1.cc/part/b/lis
- 2026-08-27T05:21:25.037Z
+ 2026-08-27T06:00:55.302Z
https://dp.round1.cc/part/b/maxseg
- 2026-08-27T05:21:25.035Z
+ 2026-08-27T06:00:55.302Z
https://dp.round1.cc/part/b/path
- 2026-08-27T05:21:25.022Z
+ 2026-08-27T06:00:55.302Z
https://dp.round1.cc/part/c
@@ -86,23 +86,23 @@
https://dp.round1.cc/part/c/merge
- 2026-08-27T05:21:25.028Z
+ 2026-08-27T06:00:55.302Z
https://dp.round1.cc/part/c/palindrome
- 2026-08-27T05:21:25.025Z
+ 2026-08-27T06:00:55.302Z
https://dp.round1.cc/part/c/ring
- 2026-08-27T05:21:25.026Z
+ 2026-08-27T06:00:55.302Z
https://dp.round1.cc/part/c/stone
- 2026-08-27T05:21:25.027Z
+ 2026-08-27T06:00:55.302Z
https://dp.round1.cc/part/c/tree
- 2026-08-27T05:21:25.026Z
+ 2026-08-27T06:00:55.302Z
https://dp.round1.cc/part/d
@@ -110,7 +110,7 @@
https://dp.round1.cc/part/d/grid
- 2026-08-27T05:21:25.023Z
+ 2026-08-27T06:00:55.302Z
https://dp.round1.cc/part/d/matpow
@@ -170,7 +170,7 @@
https://dp.round1.cc/part/g/cover
- 2026-08-27T05:21:25.016Z
+ 2026-08-27T06:00:52.946Z
https://dp.round1.cc/part/g/plug
@@ -182,7 +182,7 @@
https://dp.round1.cc/part/g/tsp
- 2026-08-27T05:21:25.017Z
+ 2026-08-27T06:00:55.302Z
https://dp.round1.cc/problems
diff --git a/site/src/components/demos/bitmask/CoverDemo.tsx b/site/src/components/demos/bitmask/CoverDemo.tsx
index 59ada74..ffd44ec 100644
--- a/site/src/components/demos/bitmask/CoverDemo.tsx
+++ b/site/src/components/demos/bitmask/CoverDemo.tsx
@@ -24,7 +24,14 @@ function MiniBits({ mask, n, tone }: { mask: number; n: number; tone: 'on' | 'of
const gap = 3
const w = n * cell + (n - 1) * gap
return (
-