码迷,mamicode.com
首页 >  
搜索关键字:子树查询    ( 15个结果
树链剖分(从入门到入土。)
前置知识:线段树,链式前向星,LCA,DFS序 树链剖分通常的操作: 1.x y 的路径上修改 2.x y 的路径上查询 3. 对于 x 的子树修改 4.对于 x 的子树查询。 一般还有换根操作。树剖也也可以做LCA。 树链剖分有两个DFS 这两个DFS就是把一棵树变成一个序列。 然后就可以用数据结 ...
分类:其他好文   时间:2019-10-03 16:12:30    阅读次数:81
bzoj 4771 七彩树
"bzoj" 先考虑离线做法,可以按深度离线,然后按照深度顺序加点,那么询问就可以变成在$dep_x+d$深度时进行子树查询.现在考虑一个点,它可以给所有它的祖先答案+1,但是如果有一个同色的点,那么在他们的$lca$处以及$lca$祖先只会有$1$的贡献,所以加入一个点就单点+1,加入一个同色点要 ...
分类:其他好文   时间:2019-09-16 23:55:04    阅读次数:178
Treap
Treap 普通二叉搜索树(BST) 对于任一棵子树,根节点权值大于左子树所有结点的权值,小于右子树所有结点权值 1. 结点结构体&初始化函数 3. 右旋 4. 左旋 5. 插入 与BST大致相同,只是在把val插入到左子树或右子树时,要根据dat来维护Treap,即通过左旋或右旋调整使得堆性质成立 ...
分类:其他好文   时间:2019-08-08 20:59:36    阅读次数:91
dsu+长链剖分
dsu,对于无修改子树查询,并且操作支持undo的问题 暴力dfs,对于每个节点,对所有轻儿子dfs下去,然后再消除轻儿子的影响 dfs重儿子,然后dfs暴力恢复轻儿子们的影响,再把当前节点影响算进去 就有了整棵子树的信息了,时间复杂度O(nlogn) 经典例题:http://codeforces. ...
分类:其他好文   时间:2019-06-24 12:28:39    阅读次数:112
并查集的两种实现(按秩合并+路径压缩)
并查集:就是有求并集,查找元素属于哪个集合的功能。 1、路径压缩:使X到根上的每一个节点的父节点都变为根节点。 查询: 合并: 2、按秩合并:使较浅的树成为较深的树的子树。 查询: 合并: 例题:hdu1232 解法一:路径压缩 #include<iostream> #include<cstdio> ...
分类:其他好文   时间:2019-02-03 12:53:33    阅读次数:201
Codeforces 620E New Year Tree
"LINK" 题目大意 给你一棵树 让你支持子树染色,子树查询颜色个数,颜色数 using namespace std; // //typename typedef long long ll; //convenient for define fu(a, b, c) for (int a = b; a ...
分类:其他好文   时间:2018-10-19 21:57:05    阅读次数:140
CF 600 E. Lomsat gelral
E. Lomsat gelral http://codeforces.com/contest/600/problem/E 题意: 求每个子树内出现次数最多的颜色(如果最多的颜色出现次数相同,将颜色编号求和)。 分析: dsu on tree。 这个可以解决一系列不带修改的子树查询问题。 考虑暴力的思 ...
分类:其他好文   时间:2018-09-27 10:36:21    阅读次数:142
主席树学习笔记
Part I 静态主席树 定义 主席树最基础可以维护区间K大的问题,由于其本质是可持久化线段树,所以要对线段树有很深的理解。 栗子:区间第K小 首先这种处理区间的问题肯定要想到区间数据结构。显然如果是指定了区间,可以把读入的数据离散化,然后建一颗值域线段树。 但是要在任意的[l,r]中查询第k小,一 ...
分类:其他好文   时间:2018-05-12 22:34:47    阅读次数:222
[BZOJ 3306]树(dfs序+线段树+倍增)
Description 给定一棵大小为 n 的有根点权树,支持以下操作: ? 换根 ? 修改点权 ? 查询子树最小值 Solution 单点修改子树查询的话可以想到用dfs序+线段树来处理,换根的处理画一画图应该可以明白: 如果查询的x是当前的根rt,直接返回整棵树的min 如果rt在x的子树中,用 ...
分类:其他好文   时间:2017-05-31 20:50:02    阅读次数:249
BZOJ:4530: [Bjoi2014]大融合
4530: [Bjoi2014]大融合 拿这题作为lct子树查询的练手。本来以为这会是一个大知识点,结果好像只是一个小技巧? 多维护一个虚边连接着的子树大小即可。 #include<cstdio> #include<cstring> #include<algorithm> #define MN 21 ...
分类:其他好文   时间:2017-04-18 09:42:13    阅读次数:221
15条   1 2 下一页
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!