一直到不超过M为止
带领关系形成一棵树,那么答案为$ans=max{L[u]\times k}$,此中k代表以u为根的子树中选出的节点数个数(设这些节点为$v_1,v_2\cdots v_k$且有$\sum_{i=1}^{k}C[v_i]\leq M$。
每个节点建一个大根堆,维护薪水值。初始时若本身满足条件就选本身,否则不选。从叶子节点往上推,对付每个节点,,将它与它的儿子节点合并。如果当前的选择用度超过了M,就pop出堆里的最大的,一直到不赶过M为止,用左偏树维护就行。动态维护当前选择的节点数num和选择用度sum即可。
温馨提示: 本文由Jm博客推荐,转载请保留链接: https://www.jmwww.net/file/35841.html
- 上一篇:如果了解nodejs可以自己实现
- 下一篇:他们都是ScrollBar