![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
主席树
lalala???
这个作者很懒,什么都没留下…
展开
-
B - Count on a tree
题目链接:https://cn.vjudge.net/contest/290094#problem/B 题目大意:给你一棵树,每个节点都有一个权值,接下来q次询问,给你两个节点,询问这两个节点之间的路上第k大的权值是多少。 题解:假设两个节点为x,y,首先利用倍增lca求出这两个节点之间的lca,每个节点的主席树是以父亲节点为根建立的,两个节点之间的路的主席树为x+y-lca(x,y)-fa[...原创 2019-04-14 17:25:32 · 187 阅读 · 0 评论 -
主席树模板
#include <iostream> #include <algorithm> #include <stdio.h> using namespace std; int h[100005],pp[100005],root[100005]; int n,m,cnt,ans; struct node{int l,r,sum;}; node tree[5000005...翻译 2019-04-14 17:26:42 · 81 阅读 · 0 评论 -
K-th occurrence
题意: 给定区间 [l,r] 和 k,求和区间 [l,r] 相同的串的第k个位置在哪? 题解:利用后缀数组求出height数组,因为排名相近的两个串是最想像的串,所以st表求区间最小值,找到字符相同的串的区间,然后利用主席树存sa值求第k大。 代码: #include <bits/stdc++.h> using namespace std; typedef long long ...原创 2019-08-24 18:46:50 · 486 阅读 · 0 评论