码迷,mamicode.com
首页 >  
搜索关键字:有根树    ( 555个结果
uva 12223(树形dp)
题意:一个城市有n个景点,景点和景点之间的路线形成一棵无根树(也就是有n-1条边),给出景点之间的花费,一个人可以任选一个景点住在那里,然后他每年都要固定去m个景点,给出这m个景点和要去的次数,这个人每次去了景点都会回家,问他一年为了观赏景点最少花费多少钱。 题解:想了好久,看看题解才完全理解。要先把无根树转化成有根树,默认让1成为根节点,然后先dfs把每个节点v当做根节点的子树的节点数统计一下在...
分类:其他好文   时间:2015-07-22 23:01:05    阅读次数:303
无根树转化成有根树
在不少题目中会遇到这样一类题:无向连通图 G 有 n 个点,n-1 条边。点从 1 到 n 依次编号.......很明显是个树结构,但是不知道具体的父子关系,这时需要将一棵无根树转化成有根树,具体讲解如下: 1.树的存储:若点数较大,需要用vector存储vector G[maxn];void...
分类:其他好文   时间:2015-07-20 23:08:04    阅读次数:144
算法导论 第二十一章:不相交集合森林
在不相交集合中的另一种更快的实现中,用有根树来表示集合。树中的每个成员指向其父节点,每棵树的根包含了代表(representative),并且是他自己的父节点。不相交森林即由多棵这样的树组成,如下图所示: [注:(b)是(a)UNION(e,g)的结果] 采用上述表示方法直观上并不比采用链表表示算法更快,但是可以通过“按秩合并”和“路径压缩”来提升效率。 按秩合并(union by ra...
分类:编程语言   时间:2015-07-18 18:42:34    阅读次数:455
HDU 5266 pog loves szh III (LAC)
问题描述 pog在与szh玩游戏,首先pog在纸上画了一棵有根树,这里我们定义1为这棵树的根,然后szh在这棵树中选了若干个点,想让pog帮忙找找这些点的最近公共祖先在哪里,一个点为S的最近公共祖先当且仅当以该点为根的子树包含S中的所有点,且该点深度最大。然而,这个问题是十分困难的,出于szh对pog的爱,他决定只找编号连续的点,即l i   ~r i   。 输入描述 若干组数据(不超...
分类:其他好文   时间:2015-07-07 22:51:27    阅读次数:371
用“倍增法”求最近公共祖先(LCA)
1.最近公共祖先:对于有根树T的两个结点u、v,最近公共祖先LCA(T,u,v)表示一个结点x,满足x是u、v的祖先且x的深度尽可能大。2.朴素算法:记录下每个节点的父亲,使节点u,v一步一步地向上找父亲,直到找到相同的“祖先”,即 是所求的答案,时间复杂度O(n)。3.优化算法(倍增法):利用二进...
分类:其他好文   时间:2015-07-07 12:57:09    阅读次数:131
省队集训Day3 tree
【题目描述】 RHL 有一天看到 lmc 在玩一个游戏。 “愚蠢的人类哟,what are you doing”,RHL 说。 “我在玩一个游戏。现在这里有一个有 n 个结点的有根树,其中有 m 个叶子结点。这 m个叶子从 1 到 m 分别被给予了一个号码,每个叶子的号码都是独一无二的。一开始根节点...
分类:其他好文   时间:2015-07-05 18:22:22    阅读次数:110
BZOJ3626 [LNOI2014]LCA
Description给出一个n个节点的有根树(编号为0到n-1,根节点为0)。一个点的深度定义为这个节点到根的距离+1。设dep[i]表示点i的深度,LCA(i,j)表示i与j的最近公共祖先。有q次询问,每次询问给出l r z,求sigma_{l#include#include#include#i...
分类:其他好文   时间:2015-07-05 14:53:26    阅读次数:126
HdU5266(LCA + 线段树)
pog loves szh III    Accepts: 63    Submissions: 483  Time Limit: 12000/6000 MS (Java/Others)    Memory Limit: 131072/131072 K (Java/Others) 问题描述 pog在与szh玩游戏,首先pog在纸上画了一棵有根树,这里我们定义1为这...
分类:其他好文   时间:2015-06-22 06:27:55    阅读次数:141
RMQ与LCA
一、什么是LCA?LCA:Least Common Ancestors(最近公共祖先),对于一棵有根树T的任意两个节点u,v,求出LCA(T, u, v),即离跟最远的节点x,使得x同时是u和v的祖先。二、算法分类 求LCA的算法很多,按照是否在线可以分为在线算法和离线算法。在线算法:用比较长的时....
分类:其他好文   时间:2015-06-17 23:01:10    阅读次数:116
树上点分治学习记录
跟着机房的潮流学了点分治,发现这个东西其实还蛮好写的,学会思想,很容易YY出来。直接上习题。 POJ 1741 TREE 点分治的模板题,首先设点xx到当前子树跟rootroot的距离为gxg_x,则满足gx+gy≤kg_x+g_y \le k可以加进答案,但是注意如果x,yx,y在同一棵子树中,就要删去对答案的贡献,以为x,yx,y会在其所在的子树中在计算一次。注意无根树转有根树的过程,需要选...
分类:其他好文   时间:2015-06-17 21:40:08    阅读次数:172
555条   上一页 1 ... 46 47 48 49 50 ... 56 下一页
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!