树上算法
文章平均质量分 66
Lcomyn
这个作者很懒,什么都没留下…
展开
-
2014.11.1 访问艺术馆
11月的第一天,靠在机房里用一条胳膊打代码,爽~~~(特以本人亲身经历告诫OIer,骑车很危险,上路需谨慎。。。。。。)言归正传,在被机房众多神犇完虐一星期后,我果断放弃了国王游戏、Hankson的趣味题、2^k进制数、选择客栈。。。。。。来到了codevs访问艺术馆------------------------------------------------------------原创 2014-11-05 13:54:31 · 1035 阅读 · 0 评论 -
2014.11.2 LCA离线Tarjan算法
首先介绍一下LCALCA(l'E原创 2014-11-05 14:49:18 · 898 阅读 · 2 评论 -
树链剖分学习笔记
暂时搞完一系列字符串算法之后,开始了树链剖分算法的学习。树链剖分算法,说白了就是一种特殊的DFS序(通过把节点分为重节点和轻节点来保证线段树的时间复杂度)然后在线段树上乱搞。题目分为点权和边权两类,点权好理解一些,边权可以转化为边在树中指向节点的权值。网上博客挺多的,不一一赘述了。上习题。ZJOI 2008 BZOJ 1036 COGS 1688 树的统计Count点权的模板题,c原创 2015-05-13 20:27:16 · 724 阅读 · 0 评论 -
【BZOJ 3083】遥远的国度
BZOJ 3083 遥远的国度这题的与 HAOI 2015T2 的不同点在于其有换根操作,但按照普通的思路我们可以发现,换根之后树的形态会有改变,每个节点的子树会发生改变,所以我们来分类讨论。修改链的操作不会发生改变,现在只考虑子树minn。为了方便,我们定义现在的换的“根节点”为root(但实际上树的根节点为1),子树根为x,黑圈标明查询范围;情况一 x=root,很显然此时应当原创 2015-05-14 11:13:59 · 2778 阅读 · 1 评论 -
【codevs 3304~3306】水果姐逛水果街系列
这题的坑开了很久了,3305大概是在NOIP之前学线段树的时候AC的,3306也是当时学完LCA后不断提交不断WA,当时基本已弃坑。。。最近学了树链剖分之后似乎觉得这俩题可做,于是搞了一个晚上,终于搞完了(蒟蒻就是蒟蒻)。。。。。。3305 这个题是链上的裸线段树,分类讨论比较蛋疼,code:#include#include#includeusing namespace std;s原创 2015-05-14 21:44:27 · 1595 阅读 · 0 评论 -
树上点分治学习记录
跟着机房的潮流学了点分治,发现这个东西其实还蛮好写的,学会思想,很容易YY出来。直接上习题。 POJ 1741 TREE 点分治的模板题,首先设点xx到当前子树跟rootroot的距离为gxg_x,则满足gx+gy≤kg_x+g_y \le k可以加进答案,但是注意如果x,yx,y在同一棵子树中,就要删去对答案的贡献,以为x,yx,y会在其所在的子树中在计算一次。注意无根树转有根树的过程,需要选原创 2015-06-17 19:23:27 · 988 阅读 · 0 评论 -
【BZOJ 1146】【CTSC 2008】网络管理network
一句话题意,树链上带修改区间第k大 感觉可以dfs+主席树O(nlog2n)O(n\log^2n)过掉,但我不会写= = 于是写的线段树套平衡树+链剖+二分(修改O(nlog3n)O(n\log^3n),查询O(nlog4n)O(n\log^4n)慢了好多啊QAQ) 这里简单介绍一下区间第K大做法,对于每个线段树所”管辖“的范围,建一棵相应范围内的平衡树(我用的Treap);修改时,修改原创 2015-07-27 17:04:32 · 1002 阅读 · 0 评论