随笔分类 - DP:背包
摘要:当一个背包有两个维度的价值的时候 可以考虑把价值压到状态里 这道题记录绝对值的话没有办法唯一确定价值 所以要记录差值 为了保证数组下标始终为正 所以我们要加上偏移量 在记录路径的时候 G不能够省去第一维度了 否则的话记录的只是最后一层从哪里来 就会出错 G只是纯粹的记录从哪里来 不存在递推的关系 #
阅读全文
摘要:树上背包问题 每一个子树就是一组背包 由于最后选根节点 因此根节点可以看做是必须选的一组 才有了后面的递推 void dfs(int x,int fa) { f[x][0]=0; for(int i=head[x];i;i=e[i].next) { int y=e[i].to; if(y==fa)
阅读全文