DP问题分类

1.不完全状态记录
    <1>青蛙过河问题
    <2>利用区间dp
2.背包类问题
    <1> 0-1背包,经典问题
    <2>无限背包,经典问题
    <3>判定性背包问题
    <4>带附属关系的背包问题
    <5> + -1背包问题
    <6>双背包求最优值
    <7>构造三角形问题
    <8>带上下界限制的背包问题(012背包)
3.线性的动态规划问题
    <1>积木游戏问题
    <2>决斗(判定性问题)
    <3>圆的最大多边形问题
    <4>统计单词个数问题
    <5>棋盘分割
    <6>日程安排问题
    <7>最小逼近问题(求出两数之比最接近某数/两数之和等于某数等等)
    <8>方块消除游戏(某区间可以连续消去求最大效益)
    <9>资源分配问题
    <10>数字三角形问题
    <11>漂亮的打印
    <12>邮局问题与构造答案
    <13>最高积木问题
    <14>两段连续和最大
    <15>2次幂和问题
    <16>N个数的最大M段子段和
    <17>交叉最大数问题
4.判定性问题的dp(如判定整除、判定可达性等)  
    <1>模K问题的dp
    <2>特殊的模K问题,求最大(最小)模K的数
    <3>变换数问题
5.单调性优化的动态规划
    <1>1-SUM问题
    <2>2-SUM问题
    <3>序列划分问题(单调队列优化)
6.剖分问题(多边形剖分/石子合并/圆的剖分/乘积最大)
    <1>凸多边形的三角剖分问题
    <2>乘积最大问题
    <3>多边形游戏(多边形边上是操作符,顶点有权值)
    <4>石子合并(N^3/N^2/NLogN各种优化)
7.贪心的动态规划
    <1>最优装载问题
    <2>部分背包问题
    <3>乘船问题
    <4>贪心策略
    <5>双机调度问题Johnson算法
8.状态dp
    <1>牛仔射击问题(博弈类)
    <2>哈密顿路径的状态dp
    <3>两支点天平平衡问题
    <4>一个有向图的最接近二部图
9.树型dp
    <1>完美服务器问题(每个节点有3种状态)
    <2>小胖守皇宫问题
    <3>网络收费问题
    <4>树中漫游问题
    <5>树上的博弈
    <6>树的最大独立集问题
    <7>树的最大平衡值问题
    <8>构造树的最小环

你可能感兴趣的:(acm之路--DP,算法详解&模板)