动态规划基础
本文将以最长上升子序列为例介绍一维线性 DP,并用二分或树状数组优化到 O(nlogn)。
背包 DP
本文将介绍背包 DP 的 0-1、完全、多重三种基本模型及其转移,含二进制分组优化的多重背包。
区间 DP
本文将介绍以区间长度为阶段合并求解的区间 DP,并以石子合并及其环形版本为例讲解转移。
树形 DP
本文将介绍在树上自底向上合并子树状态的树形 DP,以没有上司的舞会为例,并引出换根 DP。
状压 DP
本文将介绍把集合状态压成整数的状压 DP,并以棋盘放置互不攻击的国王为例讲解转移。
数位 DP
本文将介绍统计区间内满足数位约束整数个数的数位 DP,含逐位填数与记忆化搜索的实现。
插头 DP
本文将介绍在网格图上逐格转移、以轮廓线插头为状态的插头 DP,用于回路与路径计数等连通性问题。
概率 DP
本文将介绍以概率或期望为状态的概率 DP,讲解正推求概率、逆推求期望及后效性方程的求解。
DP 优化
本文将介绍斜率优化、四边形不等式与 WQS 二分三种降低动态规划复杂度的手段。