注意题目中路径是从叶子到根而非根到叶子,否则会理解错误。
考虑暴力 DP。
设 fp 表示法法塔选择以 p 为根的子树时的最大奖品数。
有 fp=maxv∈subtreep,av≤apfv+1。
好的,于是我们得到了一个非常棒棒的 O(n2) 算法。
考虑 LIS 的常见优化。
二分查找很好写,但是貌似不是很容易推广到树上?
我们发现在树上的话,线段树做法可以结合线段树合并算法做到 O(nlogn)。
代码:
1 |
|
注意题目中路径是从叶子到根而非根到叶子,否则会理解错误。
考虑暴力 DP。
设 fp 表示法法塔选择以 p 为根的子树时的最大奖品数。
有 fp=maxv∈subtreep,av≤apfv+1。
好的,于是我们得到了一个非常棒棒的 O(n2) 算法。
考虑 LIS 的常见优化。
二分查找很好写,但是貌似不是很容易推广到树上?
我们发现在树上的话,线段树做法可以结合线段树合并算法做到 O(nlogn)。
代码:
1 | #include <cstdio> |
Related Issues not found
Please contact @Alpha1022 to initialize the comment