lct
  • 2024-11-02LCT
    前置知识:Splay和文艺平衡树介绍LinkCutTree,简称LCT,时间复杂度分析细节原splay函数Rotate()中,注意son[z][]的赋值要有限制语句isroot(y),因为z可能是“认父亲不认儿子”的splay根节点的父亲(Splay()中的限制管不到,因为Splay()只考虑父亲,但Rotate()要考虑爷爷)voidRotate(int
  • 2024-10-31LCT 学习笔记
    \(\text{LCT}\)学习笔记可曾久仰\(\text{LCT}\)大名,可曾听闻\(\text{Splay}\)骂名?动态树对于一棵有\(n\)个节点的树,如果每个点都有点权,那么求解\(x,y\)之间的路径上的点权和可以用树链剖分+线段树简单做到。考虑对于一棵\(n\)个节点的动态树,也就是可以删除某一条边
  • 2024-10-07LCT 优化 Dinic
    我觉得这东西有必要记一下,因为光是看PPT很难自己写出代码……具体步骤相关啥都没写。另外学这个东西也不是很必要……Solution我们需要一个维护最小值、最小值编号,支持区间加的LCT。需要支持以下操作:\(find\_root(u)\)\(link(u,v)\)\(cut(u,v)\)\(find\_min(v)\)\(add
  • 2024-09-27林史·树上的男爵 2 | 中
    3涛哥在树上的生活也并不总是一帆风顺的,毕竟是在野外,就算有时候找不到吃的或者水源,但这些危险比起大自然的种种威胁来,还是太过逊色了涛哥发现,并不是所有的线段树都能够比作水井,有些线段树积极的很,一有操作马上就会下放,但是有的线段树就像睡着了一样,使劲踹它两脚,它才像挤牙膏一样
  • 2024-09-21技巧小记
    跳跃带修可以考虑\(\sqrt{n}\)分块维护若是跳次数超多可以考虑倍增维护很多有循环/置换环的东西可以把一次转换看成“跳跃”dp抽象网格图抽象:把状态看做网格图上的点,观察性质分层dp抽象:把每层画出,把转移边画出,看是否能通过平移等做内联dp子集枚举for(S=(1<<n
  • 2024-09-06vue中的数据代理
    在Vue中,数据代理是一种重要的机制,它使得开发者能够更方便地访问和操作数据。一、数据代理的概念数据代理是指通过一个对象代理对另一个对象的访问。在Vue中,数据代理主要是通过Vue实例来代理对数据对象的访问。当创建一个Vue实例时,可以传入一个数据对象,Vue会将这个数
  • 2024-08-28js的10个使用技巧
    js技巧01如果仅在变量为true的情况下调用函数,你就可以使用与(&&)的短路形式作为替代方法。 02如果期望值不正确,我们可以使用OR(丨丨)短路运算,为变量分配默认值。03将多个变量赋值我们可以通过数组解构来对一行中的多个变量赋值。 04箭头函数 05对于多值匹配来
  • 2024-08-22动态树笔记
    不知道“树链剖分”、“全局平衡二叉树”等应不应该归类到“动态树”里面...解决动态树问题的本质是将原树映射到一个高度为\(O(\logn)\)的树上。树链剖分主要是重链剖分,具体略.支持:链修改链查询子树修改子树查询这里的修改、查询需要满足可以用数据结构维护.一般
  • 2024-08-13[CF1172E] Nauuo and ODT
    [CF1172E]NauuoandODT首先考虑单次询问,将每个颜色拉出来,求解有多少条路径至少包含一个给定点。这就是维护所有黑色连通块的大小平方和。我们每一次删掉一个点就等价于将所有和他相连的点删掉,这样一定会T。可以使用类似CF487ETourists的套路,将其父亲—儿子化,如果一个点
  • 2024-07-30动态树问题
    [参考资料]LinkCutTree-OIWiki动态树练习题-题单-洛谷  一.动态树问题树上查询问题是指,给定一个图论中的树结构,需要对树上的子树或者链进行一系列改查的问题。和序列问题中一般常说的“动态”和“静态”不同。动态树问题一般指在树结构发生改变的情况下,在树
  • 2024-07-16LCT小记
    简介LCT是常用的一种动态树。对于一般的树上问题,我们会用树剖解决,但是如果遇到动态增删边的问题就需要LCT来解决。LCT的本质上是一种链剖分,我们将所有的边剖分为虚边和实边,所以整棵树是由若干条实链构成的,实链之间用虚边相连。我们通过splay来维护实链的信息,并以从上到下
  • 2024-07-15blog 收藏
    数学质数表高斯消元数论、数学—常见定理、结论、性质汇总一文搞懂裴蜀、扩欧、乘法逆元、中国剩余定理隔板法题型整理斐波那契数列的性质整理欧拉函数多项式计数杂谈杂项在线O(1)逆元数据结构链剖分fhqLCT总结概念LCT总结应用线段树字符串SAM随机化退火图
  • 2024-06-23[题解]AT_abc350_g [ABC350G] Mediator
    思路有加边操作,一眼LCT。问题在于处理询问操作。首先,判断联通。如果\(x,y\)不在同一个联通块内,则一定没有答案。其次,求出\(x,y\)之间节点的数量\(num\)(包括\(x,y\))。如果\(num=3\)说明\(x,y\)之间有一个共同的节点;如果\(num=2\)说明\(x,y\)直接连接;如果\(n
  • 2024-06-15【学习笔记】爱立信SPO 1400 CRAFT软件基础知识2一图形用户界面之菜单栏
    一、前期准备提示:下面所有学习内容都是基于以下条件完成的条件1.已经正确安装并正常运行SPO1400CRAFT软件(以下简称LCT)条件2.确认已正确使用爱立信SPO1400CRAFT软件通过网络登录设备(以下简称NE)具体登录教程参考:使用爱立信SPO1400CRAFT软件通过网络登录设备的详细
  • 2024-05-29LCT 模板
    1constintN=1e5+5;23inta[N];45structLCT{6structTree{7intson[2],tag,val,fa;8}tr[N];910voidinit(intro){11tr[ro].son[0]=tr[ro].son[1]=tr[ro].fa=tr[ro].val=0;12
  • 2024-04-27名表维修保养:uniapp 微信小程序自定义导航栏 详细步骤
    组件使用:  <navbarclass="header":background="backgroundColor"backtitle="标题"@onBack="goBack"></navbar>组件引用:  importnavbarfrom'@/components/NavBer.vue';组件注册:  components:{navbar
  • 2024-04-21动态树与 LCT
    前面所提到与树有关的数据结构,大部分都是在一棵树上进行的。如果是在森林中连边和删边,就要使用LCT了。LCT可以看作是树链剖分与Splay树的组合,建模中用到了树链剖分,但实际写起来与树链剖分没什么关系,主要用Splay树。它的平摊时间复杂度为\(\mathcal{O}(\logN)\)。1LCT
  • 2024-04-10LOJ#6020. 「from CommonAnts」寻找 LCT
    linkofproblem。依旧是非常精妙的做法呢!问了神仙lca才知道怎么做了,目前网上是没有题解的,有的只是一份带注释的代码的英文题解。我的细节实现也是看了这份代码得以补足的。我们定义一些量:原树重心为rt,rt的某个儿子叫做son,son子树内的某个节点为x。首先考虑哪些连通块
  • 2024-03-3020240330
    好像这次dxlx重庆只有我一个人来了?尬,根本没有认识的人,因为这个吃饭都不积极了,一个人吃饭有什么意思啊。。。还不如不吃。好好好,这就是cdqz的优良传统吗?讲两天的ds,第一天还是线段树平衡树,第二天直接把LCT整上来了。而且第一天的平衡树不是splay,是FHQTreap,也不知道讲LC
  • 2024-03-30周报-LCT & KDT-2024年3月第4周
    算法笔记LCT一种神奇的数据结构,可以用来维护树的动态结构.模板很少魔改,都是基于LCT基础操作的拓展操作.find之前别忘了先pushdown.有一种比较特别的题型:动态生成树,利用LCT方便的link,cut和维护信息功能,实现多维度或者动态的生成树构造.KDT使用平衡树维护加速平面内查
  • 2024-03-07【学习笔记】 - 基础数据结构 :Link-Cut Tree(进阶篇)
    前言LCT没题写可以去写树剖和一些线段树合并的题练手LCT的概念原本的树剖是对树进行剖分,剖分为重边和轻边LCT则是对于树分为虚边和实边,特殊的,LCT可以没有虚边(例:银河英雄传说v2)单独被包含在一个实链里的点称作孤立点在树剖中,我们使用线段树/树状数组来维护重链在Link-Cut
  • 2024-03-022024省选游记
    day\(-N\)(\(N\in\real\))day-1大家都喜欢day0板子练习,早晨起床回市区,拖了会儿。写了SAM,KMP,EXKMP,线段树合并,Matrixtree,Splay,tarjan,FST,调LCT时发现手感不佳。开了一把鳊鱼八十镜牢,三破剑箱强度真的幽默。最后放弃了LCT复习了一些算法,吹水,睡觉。day1最唐的一
  • 2024-02-292.29闲话 & solution 『任无数/花开花落之后/你仍君临芸芸众生』
    明天就省选了,我咋啥也不会最破防的一集一道LCT调了一下午没调出来最后发现是min和max取反了改完之后发现自己的访问有问题,如果有0边权我就会直接返回LLONG_MAX啊哈哈,我调了一下午,发了7个帖子然后校内OJ过了,POJ因为只有C++98所以CE了哈哈哈写个简要题解吧[
  • 2024-02-272.27 闲话 & solution 『你是太阳神倾倒而下美酒的甜香/是最高的永恒破碎之后的希望』
    考完试了,我想听歌写了几道LCT,但是都是板子我想听歌Cave洞穴勘测LCT板子啊,直接乱搞就行对于Connect操作和Destroy操作其实是Link和Cut的板子至于Query操作么...阿拉阿拉,直接对(u,v)都进行一次Find,然后判断是否相等即可核心代码就那么几行intn,m;FastI>>n>>m;while(m--
  • 2024-02-27Link-cut tree 略解
    一些前言每次做树剖时打开题解...使用LCT简单维护即可。内心:???code好√8短啊又很奇怪有种不知道却又高端大气的感觉这次来说清楚LCT到底是个什么东东问题引入例题传送门有一棵树,需要支持操作:修改节点\(u\tov\)路径值查询节点\(u\tov\)路径值很明显,这是