随笔分类 -  LCT

摘要:我们定义f(x),表示x与fa[x]的颜色是否相同,相同为0,不同为1,令 f(1)=1。g(x)表示x到root路径上的f的和。然后考虑怎么维护g(x)。 对于操作1,用LCT中的access操作来维护。 对于操作2,直接线段树查询。 对于操作3,维护一个最大值,然后区间查询最大值就可以了。 阅读全文
posted @ 2017-04-12 22:24 karles~ 阅读(206) 评论(0) 推荐(0)
摘要:题意: 给出一颗树,有4种操作: 1、如果x和y不在同一棵树上则在xy连边 2、如果x和y在同一棵树上并且x!=y则把x换为树根并把y和y的父亲分离 3、如果x和y在同一棵树上则x到y的路径上所有的点权值+w 4、如果x和y在同一棵树上则输出x到y路径上的最大值 阅读全文
posted @ 2017-02-18 21:59 karles~ 阅读(230) 评论(0) 推荐(0)
摘要:Description 为了得到书法大家的真传,小E同学下定决心去拜访住在魔法森林中的隐士。魔法森林可以被看成一个包含个N节点M条边的无向图,节点标号为1..N,边标号为1..M。初始时小E同学在号节点1,隐士则住在号节点N。小E需要通过这一片魔法森林,才能够拜访到隐士。 魔法森林中居住了一些妖怪。 阅读全文
posted @ 2017-02-17 22:20 karles~ 阅读(275) 评论(0) 推荐(0)
摘要:Description 给出n个结点以及每个点初始时对应的权值wi。起始时点与点之间没有连边。有3类操作: 1、bridge A B:询问结点A与结点B是否连通。如果是则输出“no”。否则输出“yes”,并且在结点A和结点B之间连一条无向边。 2、penguins A X:将结点A对应的权值wA修改 阅读全文
posted @ 2017-02-17 22:19 karles~ 阅读(285) 评论(0) 推荐(0)
摘要:Description 某天,Lostmonkey发明了一种超级弹力装置,为了在他的绵羊朋友面前显摆,他邀请小绵羊一起玩个游戏。游戏一开始,Lostmonkey在地上沿着一条直线摆上n个装置,每个装置设定初始弹力系数ki,当绵羊达到第i个装置时,它会往后弹ki步,达到第i+ki个装置,若不存在第i+ 阅读全文
posted @ 2017-01-16 22:12 karles~ 阅读(268) 评论(0) 推荐(0)
摘要:Description 辉辉热衷于洞穴勘测。某天,他按照地图来到了一片被标记为JSZX的洞穴群地区。经过初步勘测,辉辉发现这片区域由n个洞穴(分别编号为1到n)以及若干通道组成,并且每条通道连接了恰好两个洞穴。假如两个洞穴可以通过一条或者多条通道按一定顺序连接起来,那么这两个洞穴就是连通的,按顺序连 阅读全文
posted @ 2017-01-16 18:01 karles~ 阅读(399) 评论(0) 推荐(0)
摘要:一个LCT看了一天了,但是很多地方还是理解的很模糊,简单谈一下理解。 LCT支持的是对于森林的分裂、合并,以及查询节点的连通性等操作。 对于这片森林来说,它是由一坨树组成的,对于每一棵树,我们采用类似于树链剖分的方法,把它分割成若干条链,称为树链。 对于每条树链,维护它的顶点和父亲节点(就是顶点的父 阅读全文
posted @ 2017-01-16 17:57 karles~ 阅读(239) 评论(0) 推荐(0)
摘要:Description 一棵树上有n个节点,编号分别为1到n,每个节点都有一个权值w。我们将以下面的形式来要求你对这棵树完成一些操作: I. CHANGE u t : 把结点u的权值改为t II. QMAX u v: 询问从点u到点v的路径上的节点的最大权值 III. QSUM u v: 询问从点u 阅读全文
posted @ 2016-12-18 11:48 karles~ 阅读(472) 评论(0) 推荐(0)