卧薪尝胆,厚积薄发。
Catering
Date: Sat Mar 30 19:06:04 CST 2019
In Category:
NoCategory
Description:
给定一棵树,每次询问给定
$k$
和
$len$
,问有多少种选择
$k$
个点的方案,满足任意两点间的距离都不超过
$len$
。
$1\leqslant n\leqslant 100,1\leqslant m\leqslant 10^5$
Solution:
设
$f[i][j][u][v]$
表示考虑了前
$i$
个点,已经选了
$j$
个点,目前的最远点对为
$(u,v)$
,那么每次新加一个点
$c$
最远点对一定是
$(u,v),(u,c),(v,c)$
之一,那么我们就可以
$O(1)$
转移,预处理的时间复杂度是
$O(n^4)$
的(
$O(1)$
求
$LCA$
),然后把所有点对排序,那么对于一次询问合法的是一个前缀,于是对于每个
$j$
维护前缀和,每次询问二分即可。
Code:
没有代码
In tag:
DP-DP
Copyright © 2020
wjh15101051
ღゝ◡╹)ノ♡