2018.10.1JSOI2016最佳团体(bzoj4751)

Posted Kaori

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了2018.10.1JSOI2016最佳团体(bzoj4751)相关的知识,希望对你有一定的参考价值。

一看到“比值”最大(性价比最高)就知道跟分数规划有关系了。(这里讲过分数规划)

然后看到 要选一个候选人 必须选他的前置,画画图就知道是一棵树。

所以这道题是二分比值,每个点的权值就是战斗力-费用*比值,然后判断在树上能否得到权值和$\\geq 0$的方案。

那怎么判断?

这篇的T1讲过,典型的树上背包,像那道T1一样在树上暴力转移即可。其实这题的父子依赖性质跟那道T1差不多,因为连通块就是一片父子的依赖关系(当然最上边的根节点的祖先是还没处理到的)。

那树上每个点都要遍历一下它的所有儿子,对于每个儿子还要枚举以这个儿子为根的子树中选出的点的数量。

二分的时间复杂度是$O(log(ans))$,转移的时间复杂度$O(n^2)$。总时间复杂度是$O(n^2*log(ans))$。


这里证明一下转移的时间复杂度:

直观上看是$i,j,k$三重循环。

但是每个儿子的$n^2$个dp值只会更新给它的父亲。

换句话说,有一重循环是枚举儿子,而这是一棵树,每个儿子(也就是每个点)只会被枚举一次。

所以树上背包的时间复杂度就是$O(n^2+n)$而不是$O(n^3)$。


update:这是另一个大佬写的T2(此题)题解

以上是关于2018.10.1JSOI2016最佳团体(bzoj4751)的主要内容,如果未能解决你的问题,请参考以下文章

[JSOI 2016] 最佳团体(树形背包+01分数规划)

[JSOI 2016] 最佳团体

「JSOI2016」最佳团体

BZOJ4753: [Jsoi2016]最佳团体

#2071. 「JSOI2016」最佳团体

解题:JSOI 2016 最佳团体