码迷,mamicode.com
首页 >  
搜索关键字:有根树    ( 555个结果
【算法】树上公共祖先的Tarjan算法
最近公共祖先问题与Tarjan离线算法 最近公共祖先问题 树上两点的最近公共祖先问题(LCA Least Common Ancestors) 对于有根树T的两个结点u、v,最近公共祖先LCA(T,u,v)表示一个结点x,满足x是u和v的祖先且x的深度尽可能大。在这里,一个节点也可以是它自己的祖先。 ...
分类:编程语言   时间:2020-04-07 00:31:59    阅读次数:103
@hdu - 6426@ Problem A.Alkane
求包含 n 个碳的烷烃与烷基的同分异构体个数 mod 998244353。 如果你没学过有机化学,你可以认为烷烃是 n 个点且每个点度数 <= 4 的无根树;烷基是 n 个点且每个点儿子个数 <= 3 的有根树。 ...
分类:其他好文   时间:2020-04-01 23:28:08    阅读次数:62
浅谈LCA
[TOC] 浅谈 LCA $LCA$ 即 最近公共祖先,定义如下: 给定一颗有根树,若节点 $z$ 既是节点 $x$ 的祖先,又是节点 $y$ 的祖先,则称之为 $x,y$ 的公共祖先。 在节点 $x,y$ 所有的公共祖先中深度最大的即为最近公共祖先,记为 $LCA(x,y)$。 $LCA$ 的主要 ...
分类:其他好文   时间:2020-03-31 17:18:22    阅读次数:60
CodeForces 600E. Lomsat gelral【树上启发式合并】
"传送门" 好像大家都是拿这道题作为树上启发式合并的板子题。 树上启发式合并,英文是 dsu on tree,感觉还是中文的说法更准确,因为这个算法和并查集(dsu)没有任何关系。一般用来求解有根树的所有子树的统计问题。 根据轻重儿子的各种性质,可以证明这个算法的时间复杂度为 $O(nlogn)$, ...
分类:其他好文   时间:2020-03-31 12:19:48    阅读次数:75
[BJOI2018] 求和 - 树上前缀和,LCA
一棵有根树,并且希望多次询问这棵树上一段路径上所有节点深度的 $k$ 次方和,而且每次的 $k$ 可能是不同的。此处节点深度的定义是这个节点到根的路径上的边数。他把这个问题交给了pupil,但pupil并不会这么复杂的操作,你能帮他解决吗? Solution 对每个次数,预处理树上前缀和即可 ...
分类:其他好文   时间:2020-03-30 23:14:17    阅读次数:73
CF526G Spiders Evil Plan
"$\color{ 000000}{\texttt {CF526G}}$" 先考虑单次询问。 发现 $y$ 条路径的端点一定是叶子节点,产生的联通块最多会有 $2y$ 个叶子。 但还是不好做。 考虑一个相似的问题 一棵有根树,选 $k$ 个点,最大化这 $k$ 个点到根节点路径的并的大小。 选的点肯 ...
分类:其他好文   时间:2020-03-28 16:13:48    阅读次数:76
[CF1328E] Tree Queries - LCA
给定一棵有根树,每次询问给定一个点集,问是否存在根到某点的链,使得点集中所有点到链的距离不大于 $1$。 Solution 将每次询问的结点按深度排序好,相邻的两个结点 $p,q$ 一定满足 $d[p] d[lca] \le 1 \or d[q] d[lca] \le 1$,其中 $lca=lca( ...
分类:其他好文   时间:2020-03-27 12:39:23    阅读次数:117
[CF1286B] Numbers on Tree
给定一棵有根树,每个结点有权值 $a_i$,记 $c_i$ 为 $i$ 的子树中权值 $ using namespace std; define int long long const int N = 2005; vector g[N]; priority_queue hp; int ans[N], ...
分类:其他好文   时间:2020-03-23 09:19:09    阅读次数:64
【LeetCode】二叉树的最近公共祖先(2)
对于有根树 T 的两个结点 p、q,最近公共祖先表示为一个结点 x,满足 x 是 p、q 的祖先且 x 的深度尽可能大(一个节点也可以是它自己的祖先)。两道题分别针对二叉搜索树和普通的二叉树实现对最近公共祖先的查找。 ...
分类:其他好文   时间:2020-03-21 19:39:04    阅读次数:72
Codeforces 1324F Maximum White Subtree DFS
题意 给你无根一颗树,每个节点是黑色或白色。对于每一个节点,问包含该节点的权值最大的子树。 子树的权值等于子树中白点的个数减去黑点的个数。 注意,这里的子树指的是树的联通子图。 解题思路 这场就这题卡的比较久。 首先,如果是有根树的话,只需要dfs一遍就能得出根的答案。 设根为1,将无根树转为有根树 ...
分类:其他好文   时间:2020-03-13 01:05:27    阅读次数:45
555条   上一页 1 ... 3 4 5 6 7 ... 56 下一页
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!