前置知识 splay,树链剖分 attack 学长的博客园的好像挂掉了,在这再整理一下 = = 几乎都是抄的== 定义 LCT是一种解决动态树问题的数据结构,由 tarjan 提出。 解决问题 求 LCA 求最小生成树 维护链上信息(最大最小,链上求和等) 维护联通性 维护子树信息 优化单纯的算法 ...
转载
2021-09-07 17:57:00
95阅读
2评论
动态树是一类要求维护森林的连通性的题的总称, 这类问题要求维护某个点到根的某些数据,支持树的切分,合并, 以及对子树的某些操作 其中解决这一问题的某些简化版(不包括对子树的操作)的基础数据结构 就是LCT(link-cut tree)定义: 首先来定义一些量: a...
转载
2017-06-25 20:48:00
115阅读
2评论
Description 一棵n个点的树,每个点的初始权值为1。对于这棵树有q个操作,每个操
原创
2022-09-15 12:52:50
56阅读
在阳光明媚的午后,本蒟蒻在BZOJ刷题,偶遇人生中第一题Link cut tree——弹飞绵羊 决心攻下这道题,翻阅无数博客,发现这是一个极其恐怖的数据结构= = 啊啊啊看是看懂这是什么玩意了,怎么实现呐QAQ 。。。。。。。。。。 —————————————————— Link cut tree
原创
2021-07-20 14:48:43
102阅读
之前说了Splay Tree 和 树链剖分,其实都是为今天Link Cut Tree 做铺垫,在这里首先
原创
2022-08-25 10:51:27
118阅读
简介Link Cut Tree简称LCT,是维护动态树方式的一种,是一个可以对树进行添加链害了,首先是维护方式不同,其次它是用splay来维护的。树链剖分可以干的,LCT都可以干,但LCT可以干的,树链剖分有些并不能干。
原创
2022-12-26 18:36:36
160阅读
Link Cut Tree对我来说已经有点老生常谈了——目前为止理解的比较深的一种比较难的
原创
2022-08-26 06:42:13
112阅读
题 题意 给你一个区间,求里面有多少个数是k的次方。 分析 暴力,但是要注意这题范围会爆long long,当k=1e8; l=1;r=1e18时 k²=1e16,判断了是≤r,然后输出,再乘k就是1e24 , ULL 都存不下,就爆了。 所以当 t > r / k 时跳出循环 代码 AC代码 WA
原创
2021-07-22 14:04:00
88阅读
因为pow会有精度丢失 所以使用了一直自乘 ...
转载
2016-04-07 07:08:00
71阅读
题目传送门//暴力,有点小坑,不能用pow函数,还有中间注意循环跳出来的条件,不然会在24个test出错//AC代码如下://Created Author: just_sort//Created Time : 2016/1/17//File Name : Link/Cut Tree#include <cstdio>#include <cmath>#incl
原创
2022-04-20 10:06:08
62阅读
题目大意:给定N个点以及每个点的权值,要你处理接下来的M个操作。操作有4种。操作从0到3编号。点从1到N编号。0:后接两个整数(x,y),代表询问从x到y的路径上的点的权值的xor和。保证x到y是联通的。1:后接两个整数(x,y),代表连接x到y,若x到Y已经联通则无需连接。2:后接两个整数(x,y),代表删除边(x,y),不保证边(x,y)存在。3:后接两个整数(x,y),代
原创
2023-04-18 18:19:57
96阅读
题目大意:维护一棵树,提供四种操作:1.将x到y的路径上所有的点权值+z2.将x1到y1的边断开,然后将x2和y2链接,数据保证链接后仍然是棵树3.将x到y的路径上所有的点权值*z4.询问x到y路径上节点的权值和对51061取模我就复制粘贴算了为何要重新打一遍Link-Cut-Tree第一道功能比较全的题,比较水,水个*啊,很久以前就写完了,由于BZ挂了一直没交上去,今天交上去之后从中午开始TLE
原创
2023-04-19 02:34:09
10000+阅读
P3690 【模板】Link Cut Tree (动态树) #include<bits/stdc++.h> using namespace std; #define rep(i,a,b) for(int i=(a);i<=(b);i++) #define repp(i,a,b) for(int i=
转载
2019-10-06 12:16:00
97阅读
2评论
题目描述 给定N个点以及每个点的权值,要你处理接下来的M个操作。操作有4种。操作从0到3编号。点从1到N编号。 0:后接两个整数(x,y),代表询问从x到y的路径上的点的权值的xor和。保证x到y是联通的。 1:后接两个整数(x,y),代表连接x到y,若x到Y已经联通则无需连接。 2:后接两个整数(
转载
2018-01-16 14:10:00
66阅读
2评论
Description给定N个点以及每个点的权值,要你处理接下来的M个操作。操作有4种。操作数(x,y),代表删除边(x,y),不保证边(x,y)存在。3:后接两个整
原创
2022-09-15 13:00:25
61阅读
HDU - 5401 明显发现这个东西可以递归处理, 然后把式子列出来, 记忆化搜就可以了。
转载
2019-07-11 15:18:00
80阅读
2评论
题目大意:维护一种树形数据结构。支持下面操作: 1.树上两点之间的点权值+k。 2.删除一条边。添加一条边,保证加边之后还是一棵树。 3.树上两点之间点权值*k。 4.询问树上两点时间点的权值和。 思路:利用动态树维护这棵树,lct的裸题。假设不会下传标记的,先去做BZOJ1798,也是这种标记,仅
转载
2017-05-28 15:30:00
65阅读
说好的专题。。。lct的一些概念看论文 杨哲《QTREE解法的一些研究》 简单易懂。首先不要把lct想象得很难,其实很水的。lct就是很多splay树维护的树。。。lct的access操作就是在原树中拓展一条点到根的类二叉树出来(用splay来维护)这里,splay树是按深度作为关键字的,当然,在无...
原创
2021-08-11 11:51:57
174阅读