动态规划--树形依赖背包
来源:互联网 发布:手机视频剪辑合并软件 编辑:程序博客网 时间:2024/05/16 04:42
树形依赖背包是子树依赖父亲才能产生贡献的一类问题。 有三种种解决的办法: 1.强制选择当前节点,用当前的状态去更新子树信息,然后再用子树信息更新父亲。 2.对于这一类问题,只有选择了父亲节点,才能选择子树。所以我们用dfs序来进行dp,对于子树,再dfs序上是连续的一段,可以考虑前i个dfs序带来的最大收益,正常的背包即可,稍微注意整个子树都不选的更新即可。 3.第三种解决方法比较巧妙,将多叉树转为了二叉树。对于正常的树而言,我们的左右儿子都是儿子节点,但是在转化中,我们将当前节点的左儿子设置为它的任意一个儿子,将它的右儿子连接为与它所有深度相同的节点。这样对于选择当前节点就可以沿着左儿子走,否则只能沿着右儿子走,二维DP即可。
阅读全文
0 0
- 动态规划--树形依赖背包
- 树形依赖动态规划
- BZOJ2427 浅谈TARJAN缩点 和 树形依赖背包动态规划
- 树形依赖背包
- hdu1561树形dp+依赖背包
- 树形动态规划
- 树形动态规划
- 树形动态规划
- 选课 树形动态规划
- 将功补过 树形动态规划
- 电子眼 树形动态规划
- 树形动态规划总结
- 树形动态规划总结
- 树形动态规划
- 树形动态规划
- 【专题】树形动态规划
- 动态规划 背包问题
- 蓝桥杯 动态规划+背包
- From Book Thinking in Java------learn together
- hdu2768猫和狗 最大独立集
- MS逻辑回归与MS线性回归算法
- 设计模式C++实现(6)——建造者模式
- Android Studio运行java程序
- 动态规划--树形依赖背包
- Numpy、matplotlib实现二维数据到图像的转换,添加colormap,无边距显示
- java继承向上转型和向下转型和动态绑定
- Agri-Net
- 查询netstat中的源ip所在地
- jsp分页显示的实现代码
- 多线程
- 关于动感单车
- css中绝对定位和相对定位的理解