什么是动态规划:
动态规划,即所谓 dp。当某一个问题有(或者是可以分解为)很多重叠的子问题求解(所以每一个状态都是由上一个状态推导出来的),则可以尝试利用动态规划求解。
解题步骤(模板):
确定 dp 数组的具体含义
根据题意列出对应的 递推公式
dp 数组的初始化(必须要初始化)
遍历顺序的确定(以背包问题为例:先遍历背包还是先遍历物品)
动态规划,即所谓 dp。当某一个问题有(或者是可以分解为)很多重叠的子问题求解(所以每一个状态都是由上一个状态推导出来的),则可以尝试利用动态规划求解。
确定 dp 数组的具体含义
根据题意列出对应的 递推公式
dp 数组的初始化(必须要初始化)
遍历顺序的确定(以背包问题为例:先遍历背包还是先遍历物品)