闫氏DP分析法
图来自闫式DP分析法总结 思维导图版 - AcWing
核心思想:从集合角度来分析DP问题
dp问题,在有限集合中求最值
为什么用dp?
因为集合中数量太多
dp为什么能解决数量太多的问题
用两个阶段
一阶段状态表示
化零为整状态表示----不是一个元素一个元素枚举,每次枚举一类元素,化成子集,用一个状态来表示
状态表示f(i)分为:集合定位和集合属性
二阶段状态计算
状态计算,化整为零
例如需要求f(i),f(i)是最大值,然后我们只需要将f(i)划分成集合
判断每个子集的最大值,哪个更大,哪个就是所有集合最大值
子集一般满足两个原则(不遗漏,不重复),有时候可以重复,但一定不能遗漏
集合的划分依据:寻找最后一个不同点
dp问题很多种
选择问题,线性DP,区间DP