E-COM-NET
首页
在线工具
Layui镜像站
SUI文档
联系我们
推荐频道
Java
PHP
C++
C
C#
Python
Ruby
go语言
Scala
Servlet
Vue
MySQL
NoSQL
Redis
CSS
Oracle
SQL Server
DB2
HBase
Http
HTML5
Spring
Ajax
Jquery
JavaScript
Json
XML
NodeJs
mybatis
Hibernate
算法
设计模式
shell
数据结构
大数据
JS
消息中间件
正则表达式
Tomcat
SQL
Nginx
Shiro
Maven
Linux
可持久化线段树(主席树)
可持久化线段树
总结(
可持久化线段树
,线段树)
最近正在学习一种数据结构——
可持久化线段树
。看了网上的许多博客,弄了几道模板题,思路有点乱了,所以还是来总结整理下吧。
可持久化线段树
首先要了解此数据结构的基础——线段树。百度一下,你就知道!
a83229442
·
2023-04-12 15:44
数据结构与算法
做题记录 To 2019.2.13
3653:谈笑风生:dfs序+
主席树
。POJ3678KatuPuzzle:2-sat问题,给n个变量赋值(0/1),满足所有等式。
weixin_30621919
·
2023-04-09 20:37
数据结构与算法
可持久化线段树
(
主席树
)
我们会发现如果我们用普通的线段树好像解决不了这样的问题,这时候我们就需要新的做法,也就是棵持久化线段树(
主席树
)。思路我们知道我们每次插入线段树也都代表了一
konjac_HZX
·
2023-04-07 05:32
数据结构
c++
树
可持久化线段树
todo
主席树
树状数组二维,树状数组区间;权值线段树及其合并;数位dp,计数dp,决策单调性;fsy图论,基环树。区间可加碱性信息,可结合信息
Loboqui
·
2023-03-11 04:29
TODO-List
之单调队列优化序列DP之决策单调性优化序列DP之斜率优化树形DP斯坦纳树字符串AC自动机字符串哈希后缀数组树套树二维线段树(区间线段树套区间线段树)区间线段树套平衡树区间树套权值线段树权值线段树套区间线段树分块套
主席树
数据结构综合
weixin_30596343
·
2023-02-23 12:06
数据结构与算法
静态
主席树
#include#defineintlonglong#definemaxn50000usingnamespacestd;inlinecharget(){staticcharbuf[30000],*p1=buf,*p2=buf;returnp1==p2&&(p2=(p1=buf)+fread(buf,1,30000,stdin),p1==p2)?EOF:*p1++;}inlineintread(){
影踪派熊猫人武僧
·
2023-01-27 12:53
洛谷P2617 Dynamic Rankings
带修
主席树
模板题
主席树
的单点修改就是把前缀和(大概)的形式改成用树状数组维护,每个树状数组的元素都套了一个
主席树
(相当于每个数组的元素root[i]都是
主席树
,且这个
主席树
维护了(i-lowbit(i)
weixin_30429201
·
2023-01-14 13:00
算法用处总结
单链表和双链表`2、`单调栈`3、`单调队列(滑动窗口)`4、`kmp`5、`trie`6、`可持久化trie`7、`并查集`8、`堆`9、`哈希`10、`树状数组`11、`线段树`12、`权值线段树`13、`
可持久化线段树
zyl51_
·
2023-01-06 02:04
C++
算法
可持久化数组谈到
可持久化线段树
不只是可持久化数组,还有
可持久化线段树
,可持久化并查集.....最简单的方法因为我们的数组是一维的,又要可
weixin_30467087
·
2023-01-05 20:50
可持久化平衡树 详解
定义可以拆成可持久化和平衡树来看,所以就是可以维护历史版本的平衡树,在此,我们的无旋treap与splay相比可以很好的进行转化(主要还是因为splay的旋转操作进行历史版本回溯比较困难),其实如果会打
主席树
White_gugu
·
2023-01-05 20:46
算法
数据结构
c++
算法
数据结构
NOI2021信息竞赛学习笔记
一.图论1.仙人掌问题(圆方树)2.矩阵树定理3.网络流4.基环树二、数据结构1.线段树2.左偏树3.树链剖分4.
主席树
5.树套树6.长链剖分7.LCT三、数学1.欧拉函数|(扩展)欧拉定理|欧拉反演2
andyc_03
·
2022-12-24 14:11
线性代数
图论
算法
2020ICPC昆明【个人题解HIJLM】
I-Mr.MainandWindmills(计算几何、暴力)思路代码J-ParallelSort(思维)思路代码L-Simoneandgraphcoloring(思维、dp)思路代码M-StoneGames(思维、
可持久化线段树
juruo_c
·
2022-10-21 07:07
XCPC题解
算法
可持久化数组的非
可持久化线段树
非可持久化平衡树实现(C++代码)
可持久化数组的非
可持久化线段树
非可持久化平衡树实现例题链接可持久化数组用满二叉树储存数组让二叉树可持久化时间复杂度空间复杂度模板代码例题分析与解决分析操作1操作2解决例题链接 洛谷P3919【模板】
可持久化线段树
不沉的幸运舰
·
2022-07-10 14:09
算法及数据结构
c++
算法
2019暑期计划 / 每日刷题记录
计划##1.复习与提高###动态规划-数位DP-树形DP###图论-Tarjan-拓扑序的应用-树链剖分-点分治-树上距离-网络流/费用流###数据结构-平衡树-
主席树
-ST表###数论-整数研究-组合数学
weixin_30951743
·
2022-06-29 18:34
「洛谷 P3834」「模板」
可持久化线段树
题解报告
题目描述给定n个整数构成的序列,将对于指定的闭区间查询其区间内的第k小值。输入输出格式输入格式第一行包含两个正整数n,m,分别表示序列的长度和查询的个数。第二行包含n个整数,表示这个序列各项的数字。接下来m行每行包含三个整数l,r,k,表示查询区间[l,r]内的第k小值。输出格式输
Aurora-1217
·
2022-06-06 11:00
Easy DP Problem(
主席树
、维护区间前K大值总和)
思路:很显然的裸的
主席树
维护。不止维护区间个数,还要维护区间sum值。查询的时候贪心一下,右区间能取满K个显然取右区间更优,否则右区间取满,剩下的左区间凑。
阐上
·
2022-05-05 10:45
高级数据结构
贪心算法
算法
二分查找
线段树
数据结构
网络流水题五杀——洛谷 P3701、P2472、P1129、P2053、P2805
前言前段时间,趁着NOIP爆炸后,狂补文化课的空隙,一口气刷了好多网络流的shuiti……[1星难度]洛谷P3701「伪模板」
主席树
(二分图多重匹配)题目传送门题解很明显,有两个人,所以是二分图,两两对决可以看作匹配
AbEver
·
2022-04-27 10:05
网络流
&
线性规划
图论
第K小数 (可持久化权值线段树)
主席树
经典题
第K小数(可持久化权值线段树)
主席树
题目Link简述:题目给出N个整数,有M个询问每次询问区间L~R中第K小的数。
Snow_raw
·
2022-04-13 22:40
线段树
算法
c++
主席树
/函数式线段树/
可持久化线段树
初步 学习笔记
主席树
/函数式线段树/
可持久化线段树
初步学习笔记这玩意是真tm巧妙1.什么是
主席树
?
主席树
是一种由许多棵重叠的值域线段树构成的数据结构,可以维护很多跟值域有关的信息。2.怎么写
主席树
?
ztxcsl
·
2022-02-11 19:00
MangataのACM模板
文章目录数据结构并查集树状数组二维单点修改,区间查询线段树单点修改,区间查询区间更新、区间查询
主席树
(区间第k小数模板)单调栈单调队列Trie树01Trie树图论最短路迪杰斯特拉(堆优化+链式前向星)最短路径计数最小生成树
MangataTS
·
2021-11-15 15:17
算法教学
图论
数据结构
算法
c++
c语言
11.9刷题总结
有根号分治的做法,但是不会,于是学习了
主席树
做法
Varuxn
·
2021-11-09 21:00
2021-08-24 SSL 模拟赛 T2 【莫队】【树状数组】
题目大意:题目的描述已经够简略了······思路:70%:因为数据太水,直接暴力O(n∗m)O(n*m)O(n∗m)可以拿70分,但是根据大佬的说法,这70%是给
主席树
的(注意题目中的l=1l=1l=1
SSL_DFT
·
2021-08-25 07:31
莫队
树形数据结构
#
树状数组
ssl
莫队
树状数组
2738: 矩阵乘法(梁 盾)(分块+
主席树
)
把X分成sqrt(n)个块,然后在没个块上面套棵
主席树
就可以啦~空间复杂度:O(n^2logn)时间复杂度:O(n^2logn+qsqrt(n)logn)代码:#include#include#incl
AmadeusChan
·
2021-06-15 13:30
静态
主席树
主席树
的作用是寻找一个序列的某个区间的第k大(小)如:给出一个序列a1,a2...an,有若干个询问,每个询问形如(l,r,k),询问l到r的第k大是多少以下内容转载自这里
主席树
的每个节点对应一颗线段树
Gitfan
·
2021-05-04 15:13
【CCPC】2020CCPC长春 F - Strange Memory | 树上启发式合并(dsu on a tree)、
主席树
人均会dsu的赛区..早知道就把数组开大一点了..差20分钟就银了呀..最后一场ccpc留下遗憾了...题目大意:给出一个树让你求出:题目思路:看到lca,那就只能是枚举每个点作为lca的贡献所以枚举当前节点作为lca时,所以能够产生贡献的就是,他的任意两棵子树的贡献所以直接枚举当前这个子树的所有点,然后和之前的权值去匹配这里需要按位拆分一下:a^(b+c)!=a^b+a^c但是把数按位拆分之后,
一只酷酷光儿( CoolGuang)
·
2020-11-08 20:42
其他比赛的题解
树上启发式合并
SPOJ - DQUERY 【
主席树
】
在线方法就可以用
主席树
,这里T[i]是根据i-n的数建立的线段数,每次更新时,如果当前的数在上一个状态没有出现过,可以直接插入,出现一条新链,如果出现过,应该先把这个数擦出,然后在这个擦除的状态上更新,
eeeaaaaa
·
2020-09-17 11:44
主席树
spoj Count on a tree【
主席树
】
我们可以从根开始维护
主席树
,就相当于以根为起点维护前缀和,这样我们可以求出u-v这条路径上对应点的权值,对u,v求一下lca(最近公共祖先),然后点的权值就是c[u]+c[v]-2*[lca(u,v)]
eeeaaaaa
·
2020-09-17 11:44
主席树
lca
POJ2104 K-th Number【
主席树
】
题意:给一段序列,还有一些询问,查询l-r中的第k大的数是什么
主席树
求第K大的板子,维护前缀和,然后作差二分找第k大就是#include#include#includeusingnamespacestd
eeeaaaaa
·
2020-09-17 11:44
主席树
【算法笔记】AC自动机+
可持久化线段树
解决大字符集的问题
这样复杂度错误的要用
可持久化线段树
维护trans数组下面的代码只是一个思路。以前写这道题的代码找不到了,,,voidbuild(){hh=tt=0;for(int
Thomas_ZQQ@Runespoor
·
2020-09-16 19:01
字符串
Bzoj3551:[ONTAK2010]Peaks加强版:Kruskal+
主席树
Kruscal,对于要合并联通块的两个点x,y新建节点z令fa[x]=fa[y]=z,并且节点z的权值为这条边的边权那么我们对于一个询问只需要倍增出最后一个权值>x的节点,这颗子树就是我们要找到的联通块
主席树
维护即可
TheWolfWhistlingSong
·
2020-09-16 18:14
OI
可持久化线段树
生成树
loj6100 「2017 山东二轮集训 Day1」第一题
传送门:https://loj.ac/problem/6100【题解】我们考虑维护从某个端点开始的最长满足条件的长度,如果知道了这个东西显然我们可以用
主席树
来对每个节点建棵关于右端点的权值线段树,然后区间修改
aklm45097
·
2020-09-16 18:49
bzoj 4504 -
主席树
+区间修改
darkbzoj.cf/problem/4504解题思路:题目跟洛谷P2048差不多,主要差在区间数只能统计一次,洛谷那题区间一样的数可以重复统计.那么就可以用pre[i]表示i这个数上一次出现的位置在哪,那么对于新的
主席树
更新区间就是
a1214034447
·
2020-09-16 18:07
主席树
[bzoj2724][Violet 6]蒲公英
http://www.docin.com/p-679227660.html可以用冰点文库下载..用分块+
可持久化线段树
统计答案..有点毒瘤..
YZH__12345
·
2020-09-16 18:33
可持久化线段树
分块
SDOI2018 原题识别(
主席树
)
题目链接题目大意给定nnn个节点的树,其中包含一条非随机生成的长度为kkk的链,剩下的节点均随机父节点连边。每个节点有一个随机的颜色,维护:1.给定x,yx,yx,y,求x,yx,yx,y之间不同颜色数。2.给定x,yx,yx,y,对于所有满足分别在x,yx,yx,y到根的路径上的点a,ba,ba,b,求其询问1的答案之和。n≤105,m≤2×105n\le10^5,m\le2\times10^5
WAautomaton
·
2020-09-16 18:28
主席树
AtCoder Beginner Contest 174 总结
F虽然n还不小,但还是可以用莫队水过去(理论上大于3e9,2000ms有点危险),正解应该是
主席树
或者离线+树状数组。
主席树
空间开大点没毛病......A#in
嘉伟森的猫
·
2020-09-16 17:56
AtCoder总结
主席树
BZOJ 2120 数颜色 - 带修莫队/树状数组套
主席树
+平衡树
大概是一道带修莫队的裸题,然而还是WA了无数次,真是太弱了......千万要记得带修的话前驱和后驱都要记录都要记录!要记录!记录!录!!#include#include#include#include#include#includeusingnamespacestd;constintmaxn=10005;constintmaxm=1000005;structquery{intid,l,r,t,bl
x_1023
·
2020-09-16 00:45
莫队
线段树/树状数组
树套树
可持久化数据结构
hdu6703 array (求区间内k的后继,
主席树
)
问题描述:给一个长度为n的数列a(1)-a(n),其中a(i)为1-n的数,且每个元素是不同的接下来有m个指令指令有两种:1.(1,pos),表示把a[pos]加上100000002.(2,r,k),求不等于a(1)到a(r)且不小于k的最小整数输出指令2的结果题目保证r和k小于等于nn小于等于1e5输入:T,表示T组案例每组案例:输入n和m,表示n个数m个指令下面一行n个数下面m行每行一条表面指
这有点难啊
·
2020-09-16 00:57
Codeforces Zip-line 650D 345Div1D(LIS)
思路:可以用
主席树
在线搞,也可以用树状数组离线搞,明显后者好写得多。我们首先读取所有的询问,然后就把询问绑在给出的位置,然后我们正向做一遍LIS,反向做一遍LDS,然后就可以解决这个问题了。
weixin_33856370
·
2020-09-16 00:07
array(2019CCPC网络预选赛 hdu6703
主席树
+set)
主席树
求大于等于k的最小值
ProblemDescriptionYouaregivenanarraya1,a2,…,an(∀i∈[1,n],1≤ai≤n).Initially,eachelementofthearrayisunique.Moreover,thereareminstructions.Eachinstructionisinoneofthefollowingtwoformats:(1,pos),indicating
starlet_kiss
·
2020-09-15 23:38
主席树
set
主席树
模板
区间第K大:POJ-2104#include#include#include#includeusingnamespacestd;constintmaxn=1e5+1000;intcnt,root[maxn],n,m;inta[maxn];vectorv;structnode{intl,r,sum;}tree[maxn*40];intgetid(intx){returnlower_bound(v.b
speaker__
·
2020-09-15 23:05
算法
模板
主席树模板
K-th occurrence HDU - 6704 (
主席树
+后缀数组+二分)
题目传送题意:给出一个字符串,找出某个子串第k次出现的位置思路:后缀数组sa[i]数组表示排名第i的后缀第一次出现的下标,求第k次出现的下标只需要在某个区间中求sa数组中的第k大即可(
主席树
求第k大),
speaker__
·
2020-09-15 23:04
算法
主席树
后缀数组
HDU 6703 array 2019CCPC网络选拔赛 1002 (线段树/权值线段树/
主席树
+set)
arrayTimeLimit:4000/2000MS(Java/Others)MemoryLimit:262144/262144K(Java/Others)TotalSubmission(s):1356AcceptedSubmission(s):522ProblemDescriptionYouaregivenanarraya1,a2,...,an(∀i∈[1,n],1≤ai≤n).Initiall
pxlsdz
·
2020-09-15 23:40
数据结构--线段树
好题
比赛题解
数据结构——主席树
模板
hdu6703
主席树
加set
arrayTimeLimit:4000/2000MS(Java/Others)MemoryLimit:262144/262144K(Java/Others)TotalSubmission(s):2158AcceptedSubmission(s):848ProblemDescriptionYouaregivenanarraya1,a2,...,an(∀i∈[1,n],1≤ai≤n).Initiall
sdauguanweihong
·
2020-09-15 23:07
主席树
array HDU - 6703
主席树
+ set
#include#include#include#include#include#include#include#include#include#include#include#include#include#include#include#include#include#includeusingnamespacestd;typedeflonglongll;typedefpairP;constin
M_theory004
·
2020-09-15 23:12
线段树&&主席树
HDU6703
主席树
+set
其实这道题很简单,只有一个点需要去解决,也就是要去求一个无序区间最接近K并且大于等于的数,我在用
主席树
解决这个问题的时候,用val记录当前节点区间的数出现了多少次,并且这个区间的左端点应该要大于等于K。
好情绪
·
2020-09-15 23:12
树
hdu 6703 array
思路:在给的数组上建立
主席树
,改一下查询,查询L到R之间第一个大于等于k的数,再设一个set,把去掉的数放到set中,查询完
主席树
找set中最接近k的数,答案就是取上面两个数中的最小值#include#
仰望蓝天xz
·
2020-09-15 23:48
acm
主席树
2019CCPC-网络选拔赛 HDU-6703 array (
主席树
or 线段树)
CY提供的
主席树
思路https://blog.csdn.net/chenyume/article/details/100045386题意:给出一个序列,保证序列是一个1~n的全排列,q次操作,两种类型,
ZHXU1998
·
2020-09-15 23:41
主席树
线段树
数据结构
2019CCPC网络赛 HDU - 6703 array
主席树
查询第一个大于等于k的数
],所以结果也就是[1,n+1],所以对于加了1e7的数我们set记录一下原先的值,对于每次查询,我们输出set中第一个大于等于k的和原序列[r+1,n]大于等于k的最小值中较小的即可,那么问题就是用
主席树
找到第一个大于等于
mmk27
·
2020-09-15 23:29
主席树
主席树
总结
终于要总结一波
主席树
了。
主席树
太神奇了。。首先,
主席树
是什么?我的理解是,
主席树
首先是一颗颗地线段树,每一颗线段树都记录了不同时间的状态(这样就实现可持续化啦)。
ltwy123
·
2020-09-15 22:05
总结
2019CCPC网络选拔赛 hdu6703 array(
主席树
+set)
思路如果没有1操作,那么我们直接
主席树
就OK了。考虑不真正的进行修改,每次1操作就把a[pos]插进set,因为加10000000后肯定是大于n的,而k是小于等于n的,所以set里的数是可以用的。
autfuhyql782263188
·
2020-09-15 22:28
数据结构与算法
上一页
1
2
3
4
5
6
7
8
下一页
按字母分类:
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
P
Q
R
S
T
U
V
W
X
Y
Z
其他