LCA
_Shmily
这个作者很懒,什么都没留下…
展开
-
7-5 2020 CCPC Wannafly Winter Camp Day1 E. 树与路径(树上差分等差数列)
在一棵有根树 T 上,任何两点间的最短路径都能够分为两个阶段:从起点出发,沿着向根的方向走若干条边。向着终点,沿着离开根的方向走若干条边。定义一条路径的权值为向上走的边数乘上向下走的边数。特殊地,当起点等于终点的时候,两阶段的边数都是 0;当起点是终点的祖先的时候,第一阶段的边数是 0;当终点是起点的祖先的时候,第二阶段的边数是 0------这三种情况下,路径的权值都是 0。现在给出一棵...原创 2020-08-25 09:21:21 · 107 阅读 · 0 评论 -
P3258 [JLOI2014]松鼠的新家 (LCA,树上差分)
题目链接题面:题解:明显是个树上差分的题目,不知道为什么当时会用树链剖分+线段树写。a [ 1 ] – a [ 2 ] a [ 2 ] – a [ 3 ]其中 a [ 2 ] 最终要-1。#include<iostream>#include<cstdio>#include<cstdlib>#include<algorithm>#include<cstring>#include<cmath>#include原创 2020-08-25 08:02:45 · 94 阅读 · 0 评论 -
Codeforces Round #294 (Div. 2) E. A and B and Lecture Rooms (LCA)
题目链接题面:题意:给定一棵树。有m个询问,每个询问给出 a,b 两点,问树上到 a,b 距离相同的点有多少个。树上两点之间的距离为两点之间的最短距离。题解:① a==b 那么 n个点与a,b的距离都相同 ans = n②若dis(a,b)为奇数,那么没有任何点与a,b的距离相同 ans = 0③设 lc = lca(a,b),如果dis( lc,a )= dis( lc ,b ),那么除了 a,b所在的 lc 的子树,其他的节点都可以。我们设 a 所在的 lc 的子树的根节点为原创 2020-08-24 22:09:22 · 93 阅读 · 0 评论