原文:【BZOJ3653】谈笑风生(长链剖分)

BZOJ 谈笑风生 长链剖分 题面 BZOJ 洛谷 权限题啊。。。。 题解 首先根据题目给的条件,发现 a,b 都要是 c 的父亲。 所以这三个点是树上的一条深度单增的链。 因为 a,b 之间距离不超过 k ,并且 a 被钦定了,所以只有两种情况: 一种是 a 是 b 的祖先,贡献是 sum b size b ,也就是所有 b 可以选择的点的子树和。 另外一种 b 是 a 的祖先,贡献是 sum ...

2018-08-14 20:17 0 890 推荐指数:

查看详情

BZOJ.3653.谈笑风生(/线段树合并/树状数组)

BZOJ 洛谷 \(Description\) 给定一棵树,每次询问给定\(p,k\),求满足\(p,a\)都是\(b\)的祖先,且\(p,a\)距离不超过\(k\)的三元组\(p,a,b\)个数。 \(n,q\leq3\times10^5\)。 \(Solution\) \(p,a,b ...

Thu Nov 29 04:19:00 CST 2018 0 1998
谈笑风生组件化

  在当今的前端开发领域,大红大紫的组件化开发如万人空巷,前端技术圈中关于组件化讨论的文章亦如汗牛充栋。然而别人的理解终归是别人的,作为一个胸存小志的开发者,我还是希望能够根据自己的理解和实际工作,总 ...

Sun Feb 28 01:00:00 CST 2016 3 2275

这是和重(dsu on tree,http://www.cnblogs.com/zzqsblog/p/6146916.html)一类的trick,不过它的适用范围与dsu on tree不同,它适用于涉及到深度的查询。 例1 k-th ancestor query https ...

Thu Apr 13 01:00:00 CST 2017 4 3841
随想

  之前写了那么一篇Blog…现在不如写篇小短文…说一下另一种树方法——的事情。它可以比重更快地完成一些东西。   树的原始版本重非常经典,这里就不从头介绍了。   原本的方法是按照子树大小,与子树点数最多的儿子连成,所以叫做重…然后显然就有 ...

Thu Feb 16 05:40:00 CST 2017 3 2564
总结

是一种类似\(\mbox{dsu on tree}\)的小\(\mbox{trick}\),可以把维护子树中只与深度有关的信息做到线性的时间复杂度。 实现方式&复杂度证明 对每个点寻找深度最大的儿子作为重儿子,其余作为轻儿子。由此得到了若干条互不相交的。 在维护 ...

Mon Aug 13 23:50:00 CST 2018 5 5856
BZOJ4543】Hotel加强版(

BZOJ4543】Hotel加强版() 题面 BZOJ,没有题面 洛谷,只是普通版本 题解 原来我们的\(O(n^2)\)做法是设\(f[i][j]\)表示以\(i\)为根的子树中,距离\(i\)的深度为\(j\)的点的个数,这样子可以每次在\(LCA\)处合并答案。 然后 ...

Mon Aug 13 05:26:00 CST 2018 13 1190
总结

总结 概念 和轻重相似,都是将一棵树节点的信息分成多条的信息,但是前者是以深度,后者则是以子树大小来。 同时长还借鉴了$dsu\;on\;tree$的一些$trick$使得它能十高效地合并子树信息。 性质 破天荒地写了证明 性质 ...

Sun Jan 06 21:48:00 CST 2019 6 316
 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM