
树直径
没4年
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
Hide 捉迷藏 RMQ求LCA + 线段树维护树直径
Hide 捉迷藏 题解:裸的线段树维护树直径,但是你同时可以学到树直径和RMQ求LCA,这道题还是不错的。 #include<bits/stdc++.h> #define ll long long #define m (l+r)/2 #define ls o*2 #define rs o*2+1 using namespace std; const int maxn = 1e5+10;...原创 2019-10-31 00:05:03 · 194 阅读 · 0 评论 -
Rikka with Travels 动态维护树直径
Rikka with Travels 题意:求两条不相交的路线长度的有序对数。 题解:暴力枚举每条边对应两个点对应子树的树直径。 #include<bits/stdc++.h> #define ll long long using namespace std; const int maxn = 1e5+10; int f[maxn],d[maxn],sz[maxn],son[maxn]...原创 2019-10-28 21:24:46 · 299 阅读 · 0 评论 -
A. Lightning Routing I 线段树维护树直径
A. Lightning Routing I 题意:带修改的边权树,查询给定点到任意点的最远距离。 题解:首先我们树直径的合并,两颗子树合并后,新的树直径端点在原理两颗子树的树直径端点产生。那么我们就要查询任意树上两点之间的边权,需要一颗边权线段树,然后维护一颗树直径线段树。 注意:qu_path()函数中,更新区间最后左区间+1。 #include<bits/stdc++.h> #d...原创 2019-10-26 12:27:00 · 374 阅读 · 0 评论