码迷,mamicode.com
首页 >  
搜索关键字:lca    ( 2392个结果
【POJ3764】The xor-longest Path Trie树+异或性质
题意: 多组数据、 给你一颗树, 然后求一条最长异或路径, 异或路径长度定义为两点间简单路径上所有边权的异或和。 题解: 首先无根树转有根树再在树上跑一遍算出每个点到根的异或和。 然后两点间异或路径长度就是a[i]*a[j]。 因为lca之前那一段都被异或了两次搞没了。 然后求个线性基,然后随便搞搞就可以?可以WA了! 因为那么算哪是简单路径啊,或者说,那特喵的...
分类:其他好文   时间:2015-02-04 16:40:01    阅读次数:228
poj 1330 LCA 最近公共祖先
水题目。直接上代码了。 VIEW CODE #include #include #include #include #include #include #include #include #include #include #include #include #include using namespace std; const int mmax= 10010; const int mod=1...
分类:其他好文   时间:2015-02-03 17:25:37    阅读次数:150
hdu 2586 树上点对最近距离 (lca)
,只要知道dis[i][j]=dis[i][root]+dis[j][root]-2*dis[Lca(i,j)][root].   其中root为树的根节点,LCA(i,j)为i,j的最近公共祖先。 所以我们先把所有的询问储存下来,然后离线直接查询。复杂度是o(n+q)的。 VIE#include #include #include #include #include #include #inc...
分类:其他好文   时间:2015-02-03 17:17:34    阅读次数:160
【BZOJ2144】跳跳棋 模拟gcd以及倍增LCA
题意:首先一个状态至多有3种跳的方法的~不能隔着格子跳的~ 题解: 既然有三种方法,那么显然有两种是向外跳,一种是收敛着跳(往里) 然后这个就可以类比成父亲状态和子状态, 里兮为父,外则即子。(诶窝里斗的感觉,,这文言文有点喜感) 然后我们就发现步数是开始状态和结束状态都往里走,走到lca的步数。 或者说开始状态走到lca,然后再由lca走到结束状态。。...
分类:其他好文   时间:2015-01-29 09:39:28    阅读次数:184
【BZOJ1787】【Ahoi2008】Meet 紧急集合 LCA、双倍经验
233…… 【BZOJ1832】【AHOI2008】聚会 倍增lca 就是这道题。输入输出都没有改。 http://blog.csdn.net/vmurder/article/details/42607739 题解也在以前那篇博客里面。 代码:(直接复制的那篇博客) #include #include #include #include #define N...
分类:其他好文   时间:2015-01-29 09:37:27    阅读次数:187
Misc. - Lowest common ancestor - post-order traversal solution
Details not refined yet..struct Ret{ Ret(TreeNode *p, Mask rm) : pVal(p), m(rm){} TreeNode *pVal; Mask m;};class Solution {public: Ret lca...
分类:其他好文   时间:2015-01-27 07:03:07    阅读次数:193
【BZOJ】【3757】苹果树
树分块 orz HZWER http://hzwer.com/5259.html 不知为何我原本写的倍增求LCA给WA了……学习了HZWER的倍增新姿势~ 树上分块的转移看vfk博客的讲解吧……(其实是先指向hzwer博客,再跳转vfk和KoribohG……) vfk讲的很详细,重点就在于...
分类:移动开发   时间:2015-01-26 01:16:41    阅读次数:310
【树上莫队】bzoj3757 苹果树
学习这位神犇的:http://blog.csdn.net/jiangyuze831/article/details/41476865注意:①排序时第一关键字是左端点所在块编号(块状树),第二关键字是右端点dfs序。②维护的当前链不能包括lca(l,r),但最后要计算上lca(l,r)的答案。③对l-...
分类:移动开发   时间:2015-01-25 13:50:04    阅读次数:255
URAL 1471(lca tarjan算法)
题意:给定一棵树,查询时给定两个点,求出两个点的距离。 暴力做肯定超时的。我的做法是采用lca(最近公共祖先)的离线算法,即tarjan算法(据说Tarjan提出了很多算法,可能还有很多tarjan算法),算法里用到了并查集。在输入完所有查询之后,在求出答案。tarjan算法的做法是:一开始vis数组初始化为0,从树根开始递归往下对点进行染色,刚到一个点的时候将vis取为-1,在继续递归...
分类:编程语言   时间:2015-01-24 09:02:19    阅读次数:260
HDU 2586 How far away ?
How far away ? Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others) Total Submission(s): 6309    Accepted Submission(s): 2368 Problem Description There are n...
分类:其他好文   时间:2015-01-24 01:39:28    阅读次数:221
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!