码迷,mamicode.com
首页 >  
搜索关键字:倍增lca    ( 136个结果
倍增LCA模板
第二弹 ...
分类:其他好文   时间:2017-11-10 23:14:07    阅读次数:198
P3258 [JLOI2014]松鼠的新家
P3258 [JLOI2014]松鼠的新家倍增lca+树上差分,从叶子节点向根节点求前缀和,dfs求子树和即可,最后,把每次的起点和终点都。 ...
分类:其他好文   时间:2017-11-08 13:28:36    阅读次数:156
洛谷T1967 货车运输 Kruskal最大生成树&&倍增LCA
这题的题意是:对于每组x、y,求x到y路径上最小边权的最大值。于是可以使用最大生成树,因为最大生成树满足性质:生成树中最小边权最大,且任意两点间路径上最小边权最大。有了树之后,要求路径,那就要考虑LCA。首先,这题可以树剖,但是我太懒了,于是写了倍增233具体搞法:Kruskal跑出最大生成树,然后 ...
分类:其他好文   时间:2017-11-01 13:38:03    阅读次数:260
洛谷P3379lca,HDU2586,洛谷P1967货车运输,倍增lca,树上倍增
倍增lca板子洛谷P3379 How far away ? HDU - 2586(求树上两点距离) 方法就是求出dis[i]表示i到根节点的距离,那么两点a,b距离就是$dis[a]+dis[b]-2*dis[lca(a,b)]$ 错误笔记: 1.20行写成anc[x][i]=anc[fa][i-1 ...
分类:其他好文   时间:2017-10-29 19:29:11    阅读次数:321
货车运输(洛谷P1967)——生成树+倍增LCA的一通乱搞
恢复内容开始 题目原址在下面: ?传送门? 题目大意:n个点m条边每次询问两点之间路径的最小值的最大值。 思路:先跑一遍Kruskal,将边权从大到小排序,然后选n-1条边。之后跑倍增LCA。 ...
分类:其他好文   时间:2017-10-23 20:43:18    阅读次数:153
小X的佛光 NOIP模拟赛 倍增LCA 树结构
题面与官方std详解在最下方。 题意:给出一颗N个节点、N-1条边的无向图(树),给出Q个询问,每个询问有两条路径,求路径覆盖点的个数。其中Nmax=Qmax=200000 思路: 对于在树上的路径,我们可以用LCA解决。 举个栗子,若A与B结点的LCA是C,那么LAB=LAC+LBC。当边权都是1 ...
分类:其他好文   时间:2017-10-22 20:55:20    阅读次数:210
2017.10.2 QBXT 模拟赛
题目链接 T1 #include<cstdio> #include<cstdlib> #include<cstring> using namespace std; long long n; #ifdef unix #define LL "%lld" #else #define LL "%I64d" ...
分类:其他好文   时间:2017-10-10 17:48:08    阅读次数:238
【Luogu】P1967货车运输(最大生成森林+倍增LCA)
题目链接 倍增LCA是个什么蛇皮原理啊,循环完了还得再往上跳一次才能到最近公共祖先 合着我昨天WA两次就是因为这个 建最大生成森林,因为图不一定是联通的,所以不一定是一棵树。这个地方用克鲁斯卡尔就好了 然后给这个森林跑一遍DFS,顺便倍增 然后对于每个询问跑LCA,倍增的时候已经顺便求出了最小边权, ...
分类:其他好文   时间:2017-09-28 10:07:02    阅读次数:133
倍增-LCA
#include using namespace std; int n,tree[500005][21],deep[500005]; vector v[500005]; void qin(int &aaa){ char c=getchar(); int ans=0; while(c'9')c=get... ...
分类:其他好文   时间:2017-09-14 20:18:47    阅读次数:197
CodeVs 2370 小机房的树
学习了波Tarjan求LCA,感觉比倍增LCA麻烦啊。。。时间复杂度是 O(N+Q) N是点的数量 Q是询问数量 因为回答是乱序的,所以还要排序。。Orz好麻烦 ...
分类:其他好文   时间:2017-09-08 20:37:13    阅读次数:141
136条   上一页 1 ... 5 6 7 8 9 ... 14 下一页
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!