树形DP10分求助大佬

P1064 [NOIP2006 提高组] 金明的预算方案

这道题难道不是背包么???
by libear @ 2019-11-27 20:38:48


```cpp for(int k=0;k<n-mo[v];k++) f[v][k]=f[u][k]+c[v]; dfs(v,t-mo[v]); for(int k=mo[v];k<=n;k++) f[u][k]=max(f[u][k],f[v][k-mo[v]]); ``` 这个地方不对,应该从 $n-mo[v]$ 到 $k$ 才对。 因为每个物品只能选一次,如果让 $k$ 递增的话,之前可能会有一种情况,选了该物品更优;然后 $k$ 变为 $k+mo[v]$ 时,如果仍然优秀,就会再选择一次。 不知道讲懂了么qwq
by Crab_Dave @ 2019-12-20 22:16:46


而且最后统计答案时应该从0到n而不是n-1,因为可以刚好把钱花完。
by Crab_Dave @ 2019-12-21 11:50:20


应该没有问题了qwq
by Crab_Dave @ 2019-12-21 11:57:11


@[nia可真行](/user/231057) 树形DP。。。tql%%%
by TonyWu @ 2020-02-18 21:01:44


|