lct
Cold_Chair
我XXX就是饿死,死外边,从这里跳下去,也不会再做你九条可怜一个测试点
展开
-
GDSOI2017 中学生数据结构题(Lct练习)
题目大意:给出一棵树。 要求维护:一条路径上的点权和。 修改1:一条路径上的点的点权全部加上一个数。 修改2:shift 假设一个路径上的点是ax,ak1,ak2,…ay 就把ax的点权放到ak1上,把ak1的点权放到ak2上,…… 把ay的点权放到ax上。原创 2017-06-16 18:47:36 · 768 阅读 · 2 评论 -
【GDOI2019模拟2019.2.23】字符串
Description:题解:首先思考一个经典的问题怎么做?就是求一个串的子串的不同子串数,这玩意儿冬令营上《字符串前沿算法》讲过。考虑在把整个串的SAM建出来,注意建的时候记录每个结尾点。然后一个一个把结尾点激活,之所以要先建出来的原因是树的形态就稳固了。假设要查询[l…r]的不同子串数,先把r以前的结尾点激活。如果知道每个点的rmax,这个点的深度代表的是[x…y],那么就给...原创 2019-02-24 22:35:54 · 307 阅读 · 0 评论 -
bzoj2555: SubString
传送门.算是一下复习了两个算法。题解:建出后缀自动机,然后相当于有删边,有加边,动态维护一个点的子树里有多少个结尾的点。可以直接用lct维护子树和,或者ett维护。注意一棵有根树,其实只用lct维护路径和应该是最简单的。Code:#include<cstdio>#include<cstring>#include<algorithm>#defi...原创 2018-10-21 11:48:17 · 233 阅读 · 0 评论 -
树上三角形(idea+lct或splay)
Description:给定一个n个点的以1为根的树,每个点有一个正整数点权。 有q个操作,每个操作为以下类型之一: 1. 1 u v 询问树上所有在u到v的简单路径的节点(含u,v)中,是否存在三个不同的节点,使得以这三个节点的点权为边长的三条边能够构成一个三角形。 2. 2 u v 将节点u的权值改成v。 3. 3 u v 若节点v不在以节点u为根的子树里,那么令u的父节点为v,否...原创 2018-05-17 19:17:22 · 444 阅读 · 0 评论 -
【NOIP2017提高A组集训10.28】图
Description:有一个n个点A+B条边的无向连通图,有一变量x,每条边的权值都是一个关于x的简单多项式,其中有A条边的权值是k+x,另外B条边的权值是k-x,如果只保留权值形如k+x的边,那么这个图仍是一个连通图,如果只保留权值形如k-x的边,这个图也依然是一个连通图。 给出q组询问,每组询问给出x的值,问此时这个无向连通图的最小生成树权值是多少。1<=n,q<=100000 , n-1<原创 2017-10-30 20:25:33 · 399 阅读 · 0 评论 -
【GDOI2018模拟9.23】动态图
Description: 1<=n<=10^6,1<=q<=200000题解:暴力可以用按秩合并并查集,这个数据结构支持删除。对于正解,我们需要把l->r条边一次加进并查集,对于每一条边,它有贡献,就是加入它的时候,它会合并两个不同的集合。 反过来,它没有贡献,就是它所连着的两端本来就在一个集合里。假设我们按1->r的顺序加入每一条边,当加入一条边时,设它是x,y,设z为x到y的路径上编号最小的原创 2017-09-26 12:07:33 · 593 阅读 · 0 评论 -
JZOJ 3766【BJOI2014】大融合(lct维护子树大小)
Description:小强要在N个孤立的星球上建立起一套通信系统。这套通信系统就是连接N个点的一个树。这个树的边是一条一条添加上去的。在某个时刻,一条边的负载就是它所在的当前能够联通的树上路过它的简单路径的数量。 例如,在上图中,现在一共有了5条边。其中,(3,8)这条边的负载是6,因为有六条简单路径2-3-8,2-3-8-7,3-8,3-8-7,4-3-8,4-3-8-7路过了(3,8)。原创 2017-06-26 19:09:38 · 1038 阅读 · 0 评论 -
JZOJ 3754 【NOI2014】魔法森林
lct例题原创 2017-06-03 19:09:32 · 515 阅读 · 0 评论 -
lct学习小记
一般我们做树上的某些奇奇怪怪的值都是用树链剖分加线段树,这已经可以维护许多东西了。 可是这个算法有一个缺陷,就是如果树的形态会发生改变的话,就不用玩了。 动态树呢是一类牛逼的问题。 而lin-cut-tree就是我们处理这类问题的利器。lct的基础是splay,所以如果对splay一脸懵逼的先去学splay,至少会区间翻转。原创 2017-06-03 18:58:55 · 783 阅读 · 0 评论 -
初识lct——洛谷p3203 bzoj2002 [HNOI2010]BOUNCE 弹飞绵羊
题目大意:现在有n个装置,每个装置会弹到一个地方(编号一定在它之后),也可能直接弹了出去,动态修改会弹到的地方,和动态查询从一个装置出发多少次会被弹出去。原创 2017-06-03 19:01:00 · 538 阅读 · 0 评论 -
JZOJ6232 【NOI2019模拟2019.6.25】喜欢最最痛(凸函数,贪心,动态dp)
Description:神树大人种了一棵有边权的树,由于这是神树大人种的树,所以这棵树被命名为神神树。神神树的边权为正. 整. 数. 。神树大人命令龚诗锋从 1 号点开始走一个路径并最终回到1 号点,且这条路径经过了所有的边。一条路径的代价就是它经过的边的边权之和。龚诗锋可以加若干条额外边,第 i 条加的额外边的边权为正. 整. 数. Ai。注. 意. ,龚. 诗. 锋.不. 一. 定...原创 2019-06-26 20:00:37 · 606 阅读 · 0 评论