传送门 $\sum k \leq 100000$虚树套路题 设$f_{i,0/1}$表示处理完$i$以及其所在子树的问题,且处理完后$i$点存在$0/1$个没有被封住的关键点时的最小代价,转移考虑$i$是否是关键点,随便转就行了 ...
分类:
其他好文 时间:
2018-12-07 12:10:39
阅读次数:
231
虚树第一题 对于每次询问的点建立一棵虚树,然后在树上DP,一个点的答案就是这个点的父边切断的代价与所有儿子切断的代价去最小值,当然如果这个节点是资源点则必须切父边 注意在虚树上一条边的代价应该是中间所有边代价的最小值,在这道题里可以用到根节点边的最小值 建虚树的时候可以不去建那些在其他资源点下面的资 ...
分类:
其他好文 时间:
2018-12-04 20:37:52
阅读次数:
184
既然选择要继续,就要继续努力辣 距离WC的时间也不多了,先复习和学习一波算法 数据结构 主席树[] 线段树合并[] CDQ分治[] 线段树分治[] 虚树[] 可持久化01trie[] 整体二分 KD tree[] 点分治[] splay[] LCT[] dsu[] 长链剖分[] 左偏树[] 算法 模 ...
分类:
其他好文 时间:
2018-11-24 11:45:20
阅读次数:
253
反正肯定要建虚树,考虑建完之后怎么做 先随便dp一下算出来距离某点最近的询问点mi[x](因为有的虚树上的点它不是询问点嘛) 那我们对于某条链x到fa[x]上的非虚树上的点(包括他们的非虚树上的孩子),要么把它分给mi[x],要么分给mi[fa[x]] 我找到这个中间点以后,在原树上倍增跳过去,算他 ...
分类:
其他好文 时间:
2018-11-21 22:25:54
阅读次数:
258
题目大意: 一棵树 Q次询问 每次询问给K个点 求把些点都与根断开的最小代价 思路: 学习了一波虚树 记录一下每个点到根的路径上边权的最小值 dp+虚树 1 #include<iostream> 2 #include<cstdio> 3 #include<cmath> 4 #include<cstd ...
分类:
其他好文 时间:
2018-11-21 15:43:54
阅读次数:
229
题意:给一个字符串,多组查询,一些后缀两两的lcp长度和,查询个数和不超过1e6 题解:svt就是后缀虚树,suffix virtual tree,考虑后缀树lca求lcp长度,但是查询次数可能很多,不能每次遍历,所以要建出虚数后在虚树上dp,对于一个节点考虑算贡献,对于所有子树,两两算个数乘积乘上 ...
分类:
其他好文 时间:
2018-11-02 17:59:09
阅读次数:
143
目的 解决树上多组关于某些点的询问,复杂度是关于每次询问点的个数的和的 思路 把每次询问的点和某些lca(即关键点)浓缩到虚树上,两点之间的连边包含原树中两点间路径的信息,再在虚树上暴力(?)处理 做法 先按照dfs序排序,这样可以保证做到不在某点子树中的点时,它的子树中的点都已经做完了 用一个栈来 ...
分类:
其他好文 时间:
2018-10-18 18:06:16
阅读次数:
105
[TOC] 2018.9.22 正睿提高5 时间:3.5h 期望得分:100+80+30 实际得分:100+80+30 "比赛链接" T2一直以为类似某道虚树题(SDOI2015)。。到最后只想写暴力(写了暴力也该想到了啊)。 A 数组计数(DP) "题目链接" DP。前缀和优化一下就行了。 刚开始 ...
分类:
其他好文 时间:
2018-09-25 18:00:44
阅读次数:
185
https://www.luogu.org/problemnew/show/P2664 考虑对于每种颜色包含的点和这些点的子节点建出虚树,发现只要将一个联通块中的东西 Dp + 查分一下就行了 当然要考虑哪些东西要被加进去 如果把不是一个颜色的联通块放在一起加,里面就要算上 n 联通块大小的贡献(画 ...
分类:
其他好文 时间:
2018-09-12 20:14:39
阅读次数:
163
Problem E. TeaTree Problem Description Recently, TeaTree acquire new knoledge gcd (Greatest Common Divisor), now she want to test you.As we know, TeaT ...
分类:
其他好文 时间:
2018-08-30 14:23:47
阅读次数:
172