![](https://img-blog.csdnimg.cn/20201014180756930.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
树
xby_fx
这个作者很懒,什么都没留下…
展开
-
树链剖分基础
“在一棵树上进行路径的修改、求极值、求和”乍一看只要线段树就能轻松解决,实际上,仅凭线段树是不能搞定它的。我们需要用到一种貌似高级的复杂算法——树链剖分。树链,就是树上的路径。剖分,就是把路径分类为重链和轻链。 记siz[v]表示以v为根的子树的节点数,dep[v]表示v的深度(根深度为1),top[v]表示v所在的重链的顶端节点,fa[v]表示v的父亲,son[v]表示与v在同一重链上的v的儿子...转载 2018-03-30 19:38:48 · 95 阅读 · 0 评论 -
树链剖分例题(老师文档)
我们的主角是来自魔界,英俊的人类王子阿拉贡。有一天,阿拉贡发现许多想侵入他王国的敌人。正如阿拉贡所知道的那样,敌人有N个营地离开他的王国,M条边连接他们。这是保证,对于任何两个阵营,有一条,只有一条路径连接它们。起初,阿拉贡人知道每个阵营的敌人数量。但敌人是狡猾的,他们会增加或减少营地中的士兵数量。每当敌人改变士兵数量时,他们将设置两个阵营C1和C2。然后,对于C1,C2和C1至C2路径上的所有阵...原创 2018-03-30 19:41:09 · 306 阅读 · 0 评论 -
树链剖分基础(老师文档)
树链剖分树链剖分用一句话概括就是:把一棵树剖分为若干条链,然后利用数据结构(树状数组,SBT,Splay,线段树等等)去维护每一条链,复杂度为O(logn)。 树链剖分的第一步是对树进行轻重边的划分:定义size(x)为以x为根的子树节点个数,令v为u的儿子中size值最大的节点,那么(u,v)就是重边,其余边为轻边。 当然,关于这个它有两个重要的性质:(1) 轻边(u,v)中,size(v)...原创 2018-04-04 17:35:01 · 105 阅读 · 0 评论 -
字典树专题训练(老师文档)
统计难题Time Limit: 4000/2000 MS (Java/Others) Memory Limit: 131070/65535 K (Java/Others)Total Submission(s): 49668 Accepted Submission(s): 17542Problem DescriptionIgnatius最近遇到一个难题,老师交给他很多单词(只有小写字母组...转载 2018-04-04 18:05:52 · 106 阅读 · 0 评论