
结论
jokerwyt
这个作者很懒,什么都没留下…
展开
-
jzoj5956 【NOIP2018模拟11.7A组】easy LCA (结论)
分析 死因:思路错了 一开始在考虑欧拉序和原序列单调栈的问题,这样想其实可以分治(超麻烦)。 注意到一个结论,假如你要求n个点的lca,那么你可以以任意顺序排序,然后对相邻求lca,再求深度最小的即可。 证明很显然,考虑欧拉序,答案肯定会至少被一组相邻的点盖到, 这样问题就很简单了,做两遍单调栈再枚举答案即可。 其实还有两种做法:将dep转化为个数,这样其实就是查询子树内在给出序列内所有连续段...原创 2018-11-07 16:57:48 · 266 阅读 · 0 评论 -
LCT的access时间复杂度的势能分析
先对树任意做轻重链剖分。 然后设势函数www为同时是重边与虚边的边数。 势函数的初值是O(n)O(n)O(n)的。 考虑任意一次access(x)的复杂度,与其到根的虚边数量线性相关。 这些虚边会变成实边。 其中的轻边个数是O(logn)O(\log n)O(logn),这一部分的复杂度分析完毕。 其中的重边总数就是势函数,并且每花费一的时间势函数会相应减小,因此时间复杂度是势函数总和。 接下来...原创 2019-08-09 22:43:57 · 925 阅读 · 0 评论