树上主席树
bootdubbo
这个作者很懒,什么都没留下…
展开
-
P2633 Count on a tree【树上主席树】
题目描述 给定一棵N个节点的树,每个点有一个权值,对于M个询问(u,v,k),你需要回答u xor lastans和v这两个节点间第K小的点权。其中lastans是上一个询问的答案,初始为0,即第一个询问的u是明文。 输入格式 第一行两个整数N,M。 第二行有N个整数,其中第i个整数表示点i的权值。 后面N-1行每行两个整数(x,y),表示点x到点y有一条边。 最后M行每行两个整数(u,v,k),...原创 2019-08-31 00:17:42 · 201 阅读 · 0 评论 -
P3066 [USACO12DEC]逃跑的BarnRunning Away From…【树上差分+倍增】【主席树】
题意:给出以1号点为根的一棵有根树,问每个点的子树中与它距离小于等于L的点有多少个。 树上差分现在用的还不是很熟,先发一下树上差分的题解 #include<bits/stdc++.h> using namespace std; #define maxn 1000010 typedef long long ll; ll d[maxn]; int in[maxn],fa[maxn][20]...原创 2019-09-05 16:16:47 · 172 阅读 · 0 评论 -
P3899 [湖南集训]谈笑风生【主席树】
题目描述 设 T 为一棵有根树,我们做如下的定义: • 设 a 和 b 为 T 中的两个不同节点。如果 a 是 b 的祖先,那么称“a 比 b 不知道高明到哪里去了”。 • 设 a 和 b 为 T 中的两个不同节点。如果 a 与 b 在树上的距离不超过某个给定常数 x,那么称“a 与 b 谈笑风生”。 给定一棵 n 个节点的有根树 T,节点的编号为 1 ∼ n,根节点为 1 号节点。你需要回答 q...原创 2019-09-06 13:44:34 · 179 阅读 · 0 评论 -
P3302 [SDOI2013]森林
题目描述 小Z有一片森林,含有N个节点,每个节点上都有一个非负整数作为权值。初始的时候,森林中有M条边。 小Z希望执行T个操作,操作有两类: QxykQ x y kQxyk查询点x到点y路径上所有的权值中,第k小的权值是多少。此操作保证点x和点y连通,同时这两个节点的路径上至少有k个点。 LxyL x yLxy在点x和点y之间连接一条边。保证完成此操作后,仍然是一片森林。 为了体现程序的在线性,我...原创 2019-09-09 15:25:40 · 101 阅读 · 0 评论