LCA
forever_shi
但行好事,莫问前程;行你所行,无问西东!
展开
-
洛谷1852 BZOJ2144 跳跳棋 思维题
题目链接题意: 坐标轴上告诉你三个互不相同的位置作为三个棋子的起点,再告诉你三个不同的位置作为三个棋子的终点,每次操作可以让一个棋子以另一个棋子为轴跳到对称位置,并且只能跳过一个棋子,问你是否能最终是否能到达目标状态,如果能输出最少多少次到达。题解: 感觉这题确实不好想啊,没看题解的话我只会搜索。。。 这题我们考虑对于一种状态(x,y,z),我们设x,y,z是递增的,我们可能的操作只...原创 2018-09-12 16:31:57 · 405 阅读 · 0 评论 -
天天爱跑步 洛谷1600 NOIP2016 树上差分 LCA
题目链接题意好像不是很容易说明白,自己看题目吧。题解:如今再做往年NOIP题目还是不怎么会啊。这题想了想没想出来,然后看了好多题解,又对着y_immortal大神的代码研究了好久,才有些明白,水平还是不行啊。首先我们把无根树转化为以1为根的有根树,dfs一边求出每个点的深度和他的倍增父节点数组。我们把一条路径看成两部分,一部分是向起点与终点的LCA走的,一部分是向下走的。我们发现,对于向上...原创 2018-09-25 21:26:41 · 167 阅读 · 0 评论 -
洛谷3979 BZOJ3083 遥远的国度 树剖 倍增LCA
题目链接题意:给你一棵树,要支持下列操作:1.链赋值2.子树min3.换根,要nlogn题解:这题看了几个题解完全没有说换根是怎么维护的,都在说看代码,一气之下就自己想出了这个题。链赋值和子树min很容易想到树剖,但是树剖不支持换根。我太弱不会top tree,只能想办法解决换根问题。我们考虑换根对答案的影响,我们画个图应该不难看出换根会影响的只有新的根到原来根的路径上的点。那么询问其...原创 2018-10-17 20:48:25 · 190 阅读 · 0 评论 -
洛谷2633 BZOJ2588 Count on a tree 主席树 倍增LCA
题目链接题意:给你一棵树,m次询问,每次求x,y路径上的第k小值题解:首先将权值离散化之后,用主席树维护。主席树中每一棵线段树中记录从该点到根(我规定了1号节点为根)的信息之和,这样求一条链的信息就相当于求x到根+y到根-lca(x,y)到根-father(lca(x,y))到根,这样就可以不重不漏地包含链上每个点的信息一遍,可以自己画个图看看。其中LCA可以倍增求出,然后我们在询问时要...原创 2018-10-04 22:16:09 · 144 阅读 · 0 评论 -
BZOJ3881 [Coci2015]Divljak AC自动机 树状数组 倍增LCA
题目链接由于是BZOJ的权限题,于是放的是darkbzoj的链接。题意:你有一个由nnn个字符串组成的集合SSS,然后有qqq次操作。每次操作会在另一个集合TTT中加入一个字符串,或者询问某一个在SSS中的串在TTT集合的所有串中的多少个中出现过。n,q&lt;=1e5n,q&lt;=1e5n,q<=1e5,总串长&lt;=2e6&lt;=2e6<...原创 2019-02-20 21:29:02 · 166 阅读 · 0 评论 -
洛谷4556 BZOJ3307 [Vani有约会]雨天的尾巴 线段树合并 差分 LCA
题目链接题意:首先村落里的一共有nnn座房屋,并形成一个树状结构。然后救济粮分mmm次发放,每次选择两个房屋(x,y)(x,y)(x,y),然后对于xxx到yyy的路径上(含xxx和yyy)每座房子里发放一袋z类型的救济粮。然后问当所有的救济粮发放完毕后,每座房子里存放的最多的是哪种救济粮。如果有多种数量相同的输出编号最小的。n,m,z<=1e5n,m,z<=1e5...原创 2019-03-23 14:09:56 · 280 阅读 · 0 评论