树形DP这个非常特殊,他好像和是唯一一个用深搜实现的DP,所以我们学好它也是应该的,当然,他也是这四个中最简单的,其特点是通过深搜。
思路:
- 先找到一个根节点,然后预处理出所有子树的大小。
- 然后深搜把最底层的子节点处理出来。
- 递归回溯到根节点,在回溯的时候完成状态转移。最后输出根节点的值。
状压DP就更神奇了,可以说是最有OI特点的一个DP,因为它用到了位运算和二进制。因此像那些一个区间只有选或不选的操作的那些状态可以用二进制表示,然后在用一些不同寻常的东西,例如左移右移使可以状态转移。而判断是否是状压DP时可以查看数据,如果在20以内就可以使用树形DP。
未完待续