虚树
forever_shi
但行好事,莫问前程;行你所行,无问西东!
展开
-
洛谷3233 BZOJ3572 HNOI2014 世界树 虚树 树形dp
题目链接题意:给你一棵n个点的树,边的边权都是1,有m次询问,每次选出若干个点,对于每次询问,每个点要划分给离它最近的被选出来的点,如果有多个距离相同的点,则把这个点划分给这几个距离相同的点中编号最小的点,求每次询问选出的这些点各自分得了多少个点。nnn和∑选出的点的个数\sum选出的点的个数∑选出的点的个数都是3e5量级的。题解:每次询问选出树上若干个点的题目还是考虑建出虚树之后树形dp...原创 2018-11-18 19:07:31 · 220 阅读 · 0 评论 -
洛谷4606 BZOJ5329 SDOI2018 战略游戏 圆方树 虚树
题目链接题意:多组数据,给你一张n个点m条边的无向图,保证连通,多组询问,每次询问选出若干个点,问你在图中有多少个没有被选中的点能在删去之后使得至少有一对选中的点不再连通。n,m,∑n,m,\sumn,m,∑选出的点数都是2e52e52e5量级的。题解:去年SDOI二轮Day1的T2,本弱当场爆零,记得当时企图当场yy把图变成树的方法,然后树剖,就可以做subtask2的45分,但是写了很...原创 2018-11-19 11:01:51 · 189 阅读 · 0 评论 -
虚树学习笔记
全机房的小伙伴们都早就会虚树了,就我不会,于是决定学习一下虚树。前两天看了一些别人的讲解,大体明白了虚树的思想,于是写一篇学习笔记。虚树经常用来解决在一棵树上选出若干点,有若干次询问,每次询问求这若干点的某一个东西,一般选出的点的总数是1e5量级的。这类题的一个暴力做法通常是可以对于每次询问都暴力树形dp,但是这样复杂度就比较高,我们发现每次只选出了一些点,但是却对整棵树重新做了一遍dp,看起来...原创 2018-11-17 16:56:03 · 195 阅读 · 0 评论 -
洛谷2495 BZOJ2286 SDOI2011 消耗战 虚树 树形dp
题目链接题意:给你一棵以1为根的树,边有边权,有m次询问,每次询问选出k个点,问这k个与1号点都不连通要割断的最小边权和。n,m<=1e5n,m<=1e5n,m<=1e5量级,∑k\sum k∑k是O(n)O(n)O(n)量级的。题解:一道虚树模板题。这种树上选若干个点的题基本就是往虚树方面想了。我们预处理出每个点割断它到1号点的最小代价,然后每次询问建...原创 2018-11-17 21:19:04 · 183 阅读 · 0 评论 -
CF1111E Tree 虚树 dp
题目链接题意:给一棵nnn个结点的树,qqq次询问,每次询问首先是三个数k,m,rk,m,rk,m,r,接下来跟着kkk个结点编号,请你将这kkk个结点分成不超过mmm组,使得在以rrr为根的情况下,组内的任意两个结点不存在祖先关系,求方案数对109+710^9+7109+7取模。根不一定在这kkk个点内。n,q<=1e5,∑k<=5e5n,q<=1e...原创 2019-03-27 11:51:31 · 478 阅读 · 0 评论