贪心与动态规划一直被津津乐道,它俩的共同点都是从状态之间的关联性下手
贪心是寻找状态之间的单调性,动态规划是寻找状态之间的转移方程;本质上都是求状态间的关联性!
若能证明问题本身完全具有单调性,可以使用贪心求解;若单纯使用单调性并不能覆盖所有情况,就要考虑动态规划
题目本身就蕴藏着单调性规律,可以见铺设道路以及哈夫曼树的模板题
但绝大部分的难题比如国王游戏,需要根据题意比较相邻元素,它们位置交换前后的单调性差异求出单调性规律
又或者像分组,在操作的过程中不破坏元素间的单调性规律
一般贪心的数据范围比DP要大得多,可以作为小提示来选择