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
主席树
第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
主席树
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
主席树
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
数据结构与算法
D-query SPOJ - DQUERY(莫队算法)
这题的解法并不唯一,在网上看到的主要有
主席树
和莫队算法两种,但
主席树
的代码普遍比较长而且较难理解。而莫队算法代码量短而且叫容易理解。
zzuliwyl
·
2020-09-15 21:42
hdu-6703 array(
主席树
+set)
主席树
维护最小值如果一个数被插入队列,相当于这个数无法被选inf如果一个数加1e7;相当于这个数又可以被选实际维护+1e7的操作比较麻烦直接用将+1e7的数字压入set中二分找>=k的最小的数在于查找的答案去
weixin_30670925
·
2020-09-15 21:10
array HDU - 6703(
主席树
+set)
题目链接题意:略思路:对于操作1,a[i]修改后原a[i]的值可以成为以后询问时的答案,压入set中;操作2在区间[r+1,n]上找大于等于K的值,因为可能是修改操作的值,从set中找到大于等于k的值与
主席树
中区间
speaker__
·
2020-09-15 21:51
算法
主席树
HDU-6703-array(两种思路(
主席树
+set||线段树))
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=6703题目大意:给出一个n个元素的数组A,A中所有元素都是不重复的[1,n]。有两种操作:1.将pos位置的元素+1e72.查询不属于[1,r]中的最小的>=k的值。强制在线。思路:当时想的是树套树,但是O(nlong^2(n))总是超时,一直想不出有什么办法优化掉一个多余的logn,到最后都没有写出来
永远鲜红の幼月
·
2020-09-15 21:08
数据结构
HDU-6703 array(
主席树
)
题意:给出一个序列,保证序列是一个1~n的全排列,q次操作,两种类型,一是给a[i]a[i]a[i]加10710^7107,另一种是给出r,k,询问一个最小的数字x,使得x>=kx>=kx>=k,x不等于区间[1,r]内的任何一个数字,强制在线,数据范围:n,m<=105,k<=nn,m<=10^5,k<=nn,musingnamespacestd;consti
cy41
·
2020-09-15 21:42
线段树
【HDU6703】array
首先,最暴力的做法就是树状数组套权值线段树,实现了支持单点修改的
主席树
功能,但是复杂度爆炸了。题目中所给的排列这一条件,可知没有两个数字是相同的。由于询问的k小于N,因此单点修改操
K1385170
·
2020-09-15 21:49
数据结构与算法
数据结构----
主席树
这两天一直在看各种树~划分树,左偏树,
主席树
,伸展树~~~好乱~~一听到
主席树
这个名字的时候感觉好奇怪,为什么会叫
主席树
,感觉好难好高大上,所以一直敬而远之,,,,,
主席树
是一个大牛的拼音缩写HJT(hujingtao
BIGKAKA
·
2020-09-15 19:41
数据结构
ACM模板
目录素数素数筛求1e18以内数因子分解的最小幂次数论中国剩余定理二次剩余定理图论tarjan缩点求割点dp区间dp单次合并多堆数据结构线段树单点修改区间修改动态开点线段树
主席树
求区间第k大奇怪的定理n数码其他逆元快读离散化随机数求数字
滑了个稽
·
2020-09-15 14:32
数据结构(
主席树
,Bit):XTU 1247/COGS 2344. pair-pair
pair-pair输入文件:pair-pair.in输出文件:pair-pair.out简单对比时间限制:7s内存限制:64MBTimeLimit:7000MSMemoryLimit:65536KBPair-PairBoboistiredofallkindsofhardLIS(LongestIncreasingSubsequence)problems,sohedecidestomakehimsel
weixin_30511039
·
2020-09-14 20:39
数据结构与算法
树套树-区间第k大(带修改)
首先用一棵
主席树
(见这篇文章)维护没有操作前的数据。然后用树状数组维护修改。树状数组的每一个节点是一棵线段树,而且树状数组的每个节点都有一个管辖域(树状数组的性质没变)。
w20810
·
2020-09-14 20:34
ACM-数据结构
ACM-模版
主席树
树套树
2020牛客多校第五场H
,具有单调性了,那么我们其实是可以通过二分来求得对于第i个位置,它往一个方向取&后会在哪些地方改变,如果可以离线那么这道题就可以和REQ这道题类似的做法,但是本题强制在线,而且询问是区间询问可以考虑用
主席树
来进行维护
qq_2456160268
·
2020-09-14 19:35
ACM
数据结构
算法
BZOJ 3524 POI 2014 Couriers
主席树
思路用
主席树
取区间出来,在权值线段树上找。
16bit戦争
·
2020-09-14 19:59
主席树
POI
BZOJ
[BZOJ 3653] 谈笑风生
可以用
主席树
(或线段树合并)维护a子树内、dep在某个区间限制内的size和。
CE自动机
·
2020-09-14 18:51
线段树详解 (原理,实现与应用)
线段树详解By岩之痕目录:一:综述二:原理三:递归实现四:非递归原理五:非递归实现六:线段树解题模型七:扫描线八:可持久化(
主席树
)九:练习题一:综述假设有编号从1到n的n个点,每个点都存了一些信息,用
岩之痕
·
2020-09-14 08:56
线段树/平衡树
算法/数据结构分析
【模板】
主席树
模板
#includeusingnamespacestd;constintmaxn=2e5+7;intn,m;inta[maxn],b[maxn],rt[maxn'9'){if(s=='-')f=-1;s=getchar();}while(s>='0'&&s<='9'){x=x*10+s-'0';s=getchar();}x*=f;}voidbuild(int&t,intl,intr){t=++ndnu
Zbw_OIer
·
2020-09-14 06:35
数据结构
线段树
线段树
由于考虑到结构体引用慢,并且在可持久化线段树(
主席树
)中,已经不满足完全二叉树的性质,为了统一线段树的写法,建议大家统一使用动态开节点建树的方法。变量名的改变变化不大,列举如下:l
Zbw_OIer
·
2020-09-14 06:35
数据结构
线段树
线段树模板
Count on a tree|
主席树
用
主席树
维护这个点到根上的数,然后Lca上的数单独处理!!!!!!!!!
ws_yzy
·
2020-09-14 05:57
主席树
SPOJ 3267 DQUERY(
主席树
在线|树状数组离线)
今天学习了
主席树
,又用
主席树
做了一遍,思路和树状数组差
godspeedkaka
·
2020-09-14 04:16
程序设计竞赛
洛谷P3157 : 动态逆序对 (cdq分治)
分析:这题是树状数组套
主席树
水题,按顺序加入数字,求出最后的逆序对数,删除数字时只需要删除该数字对答案的贡献,该数字的贡献有两种:位置在它前面值大于它和位置在它后面值小于它。
猝死在学ACM的路上
·
2020-09-14 04:30
CDQ分治
上一页
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
其他