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
———树套树
HDU 4819 Mosaic --二维线段树(
树套树
)
题意:给一个矩阵,每次查询一个子矩阵内的最大最小值,然后更新子矩阵中心点为(Max+Min)/2.解法:由于是矩阵,且要求区间最大最小和更新单点,很容易想到二维的线段树,可是因为之前没写过二维的线段树,所以没跳出来。后来熟悉了一下,原来很多细节地方都没有考虑到。这里build,update,query都分为两个函数,第一个为Y轴的(sub_update),第二个为X轴的(update),不仅每个s
weixin_30905133
·
2020-07-13 17:44
线段树套线段树
二维线段树一般用线段树套线段树写,当然也可以用四叉树写
树套树
,顾名思义,外层树的每个节点都是一棵树。
weixin_30750335
·
2020-07-13 17:28
HDU 4819:Mosaic(线段树套线段树)
学了一下
树套树
,一开始觉得挺容易理解,但是后面PushUp那
weixin_30292843
·
2020-07-13 16:12
树套树
+二维线段树+hdu4819
长春现场赛的题目,比较裸的一道二维线段树,只可惜当时不会写。。。首先按一维进行更新、查询,到结束条件后,再按第二维进行更新查找。#include#include#include#include#includeusingnamespacestd;constintmaxn=810;constintINF=1000000000;intn,xl,xr,yl,yr;intmaxv,minv,ans;intg
u010660276
·
2020-07-13 14:08
树状数组/线段树
Mosaic HDU - 4819
点击打开链接二维线段树模板题二维与一维线段树都是一个道理即把大的区域或区间分成更小的部分难在理解二维中大区域和小区域之间的关系可以当作
树套树
来想二维中每个小区间都代表一棵一维线段树确定二维中每一个小区间就是确定了一个区域有哪些行再确定对应一维线段树中某个区间就是确定了一个区域有哪些列
sunyutian1998
·
2020-07-13 14:13
线段树/树状数组/RMQ
hdu4819 Mosaic 二维线段树(
树套树
)
/* 题目描述:原问题中拆分出来这样的一个问题: 给定一个n*n的矩阵,查询某一块最大最小值,修改某一个位置的值,操作数共有约1e5次 思路:二维的线段树,写法是
树套树
,
jijijix
·
2020-07-13 06:26
线段树
[CQOI2011]动态逆序对
solution:~~1.分块树状数组暴力,~~不讲2.
树套树
已知有两种写法位置树状数组,权值线段树权值树状数组,位置线段树这里写权值树状数
GGAutomaton
·
2020-07-10 05:00
树套树
救赎之路Ⅱ
写在前面的..自己应该清楚应该做什么..想要做什么呢..SAM大量的题及课件[0/1]巩固MRPR[0/1]杜教筛[1/1]
树套树
[0/1]现在做了多少?(懒得数了..[9.13更])??
weixin_30532369
·
2020-07-08 13:32
树套树
-线段树套平衡树
这两个结合起来,就变成了可以区间修改和查询第k大,k的排名,前驱,后继的数据结构:
树套树
-线段树套平衡树。
ZigZagK
·
2020-07-06 14:51
树套树
算法&数据结构总结By_ZZK
APIO2007-2015题解大集合(2007年篇)
有意思的是,APIO并没有出现过中国特色数据结构(给你一个序列,支持XXXX操作,来个可持久化
树套树
看出题人心情带不带垃圾回收……
yk_289371298
·
2020-07-06 10:06
【
树套树
】【bzoj 3236】: [Ahoi2013]作业
http://www.lydsy.com/JudgeOnline/problem.php?id=3236BIT套SBTTreap没救了,无论怎么优化常数都过不了,于是乎随便改成了SBT。。。。。。开始SBT的sz我用的s维护结果狂RE。。。。。。最后90s卡过。。。。。比莫队慢。。。。。。。被虐了2h。。。。。。早知道写个莫队。。。。。。莫队明明是O(nsqrt(n)logn)我的是O(nlogn
willinglive
·
2020-07-06 07:33
高级数据结构
算法笔记:
树套树
(树状数组套主席树+线段树套平衡树)
最近打算研究一波
树套树
,以下分别介绍了树状数组套主席树和线段树套平衡树的原理和简单用法。
IlIlIllIIl
·
2020-07-06 05:50
算法笔记
BZOJ4170 极光(CDQ分治 或
树套树
)
传送门BZOJ上的题目没有题面……【样例输入】35243Query22Modify13Query22Modify12Query11【样例输出】233这道题稍微分析一下就知道是求一个一个点曼哈顿距离小于k的的范围内的点的个数(把下标看做x,把值看做y)。然后我们只需要旋转一下坐标轴就变成了和“Mokia”或“简单题”一样的CDQ分治裸题了,求二维空间前缀和。首先将询问按x排序,然后开始分治过程,计算
weixin_33979363
·
2020-07-05 23:51
[BZOJ3295] [Cqoi2011]动态逆序对 (
树套树
)or(CDQ分治)
题意:N个数的排列,M次操作,每次求当前的逆序对数量并删掉一个数。先说一下cdq分治做法。(5960kb,1.4s)网上很多题解,我都看不懂(其实很多人的程序几乎是一样的,就改了一下变量名),然后就自己硬着头皮想了这道题,基本是独立做出来的,做出来之后竟然1A,简直愉快。不过我太辣鸡了想了半天才发现这本质上是一个三维偏序,分别是时间,下标,数值,记为(t,x,y)。我们可以把删除的过程倒过来,当做
broxin
·
2020-07-05 16:00
题解
cdq分治
平衡树
bzoj 3489: A simple rmq problem
id=3489思路:这题网上到处是
树套树
,我就不多说了。。。
qq_20669971
·
2020-07-05 03:40
bzoj1901
树套树
的一种解法
Description给定一个含有n个数的序列a[1],a[2],a[3]……a[n],程序必须回答这样的询问:对于给定的i,j,k,在a[i],a[i+1],a[i+2]……a[j]中第k小的数是多少(1≤k≤j-i+1),并且,你可以改变一些a[i]的值,改变后,程序还能针对改变后的a继续回答上面的问题。你需要编一个这样的程序,从输入文件中读入序列a,然后读入一系列的指令,包括询问指令和修改指
lpf_as_an_oier
·
2020-07-04 22:24
树套树
BZOJ 3489 A simple rmq problem 可持久化
树套树
题目大意:给定一个序列,多次询问某一区间中出现且仅出现一次的最大的数令第i个数左侧第一个与这个数相同的数为last[i]右侧第一个与这个相同的数为next[i]那么一个数a[i]在区间内出现一次当且仅当last[i]r&&lr的数中[l,r]区间内的最大值因此我们外层线段树维护next每个节点开一棵可持久化线段树维护相应位置元素的最大值每次插入一个点的时候,先依照外层线段树的上一个版本新建一条链然
PoPoQQQ
·
2020-07-04 07:50
线段树
BZOJ
树套树
可持久化数据结构
zoj 2112 Dynamic Rankings 带修改区间第k大的几种解法
比较快的做法是
树套树
,而分块算法复杂度比较高写起来方便。分块算法可以很简单的处理单独修改某个值的情况。将n个数分成num块,每块大小siz=n/num。
HuanTongH
·
2020-07-04 05:24
数据结构
[BZOJ3489]A simple rmq problem(kd-tree)
题目描述传送门题解听说这道题是可以写主席
树套树
的(ATP%%%)我的做法是三维kd-tree,分别是:这个点的位置,上一个相同数字的位置,下一个相同数字的位置然后每一个有一个点权即为这一位上的数字,然后对于每一个子树维护位置的最大值和最小值
Clove_unique
·
2020-07-04 05:13
题解
kd-tree
【BZOJ4539】【Hnoi2016】树
树套树
我也不知道是算
树套树
还是算分块。。。主要思想就是把模板树建好之后,每个加入一块树的操作在大树中只加入一个代表节点,代表节点的父亲设置为实际父
RicardoWWW
·
2020-07-04 01:34
bzoj3196 Tyvj 1730 二逼平衡树(
树套树
,线段树套splay/bit套动态开点线段树)
线段树套splay,看网上题解大部分说套splay是过不去的,需要优越的姿势才可以,本想着过不去再卡一卡优越的姿势的,然而过了qaq。线段树维护区间,对于线段树的每个节点我们吊一棵splay维护区间内的权值。操作1:查询k在区间[l,r]上的排名。线段树上查询区间,去splay上查询小于k的有多少个,都加起来即可,再加1就是k的排名。操作2:查询区间[l,r]上的排名为k的数。这个操作比较精妙,我
Icefox_zhx
·
2020-07-01 10:52
bzoj
树状数组
线段树
主席树
平衡树
树套树
[整体二分 ||
树套树
|| 点分治] BZOJ 4009 [HNOI2015]接水果
整体二分的做法题解很多:http://blog.csdn.net/thy_asdf/article/details/50363672点分治么还不会233
树套树
么ORZ打的整体二分#include#include
里阿奴摩西
·
2020-06-27 09:11
点分治
树套树
整体二分
3295: [Cqoi2011]动态逆序对 树状数组套主席树
这道题的
树套树
作法是比较显然的,用树状数组套主席树,然后维护比每个数大的和比每个数小的数的个数,然后发现直接建可能会炸空间!!!
ws_fqk
·
2020-06-22 03:37
My
Code
接水果【题解】
一个套路就是用dfs序的区间包含关系.这个套路大概自己推理一下就出来了.然后发现限制条件是一个二维的,所以这个区间不是一个线段,而是一个矩形,所以用一下扫描线.当然可以用
树套树
PH_2002
·
2020-06-21 22:30
题解
整体二分
扫描线
小Q与找茬
看到二维很容易想到用
树套树
维护。时间复杂度为O((n+q)log^2n+点数*logn)但是其实不用
树套树
。
cszmc2004
·
2020-06-18 09:00
BZOJ-2716: [Violet 3]天使玩偶 && BZOJ-2648: SJY摆棋子(k-d树)
其实2716可以CDQ分治+BIT或者
树套树
水掉的,无奈代码量太大不敢写,于是就去搞了k-d树。。。结果搞了整整一天才调好。。。(偷懒的后果。。。)(话说BZOJ终于破500了好
AmadeusChan
·
2020-02-12 03:42
数列 [
树套树
]
暴力
树套树
就过了啊随便抓两个图//poweredbyc++11//b
_Isaunoya
·
2020-02-11 17:00
【线段树】牛客 Practice for KD Tree (二维线段树/
树套树
)
PracticeforKDTree题意:一个\(n*n\)矩阵\(A\),有\(m_1\)个操作:给\(x_1\;x_2\;y_1\;y_2\;w\),对所有\(A_{ij}\)(\(i\in[x_1,x_2]\)且\(j\in[y_1,y_2]\))加上\(w\);有\(m_2\)个询问:给\(x_1\;x_2\;y_1\;y_2\),求出\(A_{ij}\)(\(i\in[x_1,x_2]\)
草丛怪
·
2020-02-01 01:00
P3759 [TJOI2017]不勤劳的图书管理员 [
树套树
]
树套树
是什么啊我不知道/dk我只知道卡常数w//byIsaunoya#pragmaGCCoptimize(2)#pragmaGCCoptimize(3)#pragmaGCCoptimize("Ofast
_Isaunoya
·
2020-01-25 13:00
3722. 【CF403E】Two Rooted Trees
由于直接
树套树
空间会被卡,所以在预处理的时候用可持久化线段树合并的方式来进行,空间复杂度是\(O(n\lgn)\)的。修改的时候直接将与某条边所有相关的信息抹掉,于是就可以暴力改。时间是\(
jz_597
·
2020-01-07 15:00
luoguP3380 【模板】二逼平衡树(
树套树
)
题意我用了线段树套平衡树(Splay)去做。分别说每一问:第一问:求一个数区间排名:我们求出区间内小于这个数的个数,加\(1\)即可。第二问:求区间第K大:我们显然不能在\(\logn\)个平衡树上求这个东西,于是我们在外面二分答案\(mid\),之后判断其排名与\(k\)的关系即可。第三问:单点修改:我们将从\(1\)到叶子的每个点的平衡树都删除原数,加入新数即可。第四/五问:求区间某个数的前驱
nofind
·
2019-12-31 00:00
待学
*
树套树
线段树套线段树线段树套平衡树*平衡树套线段树6.可并堆左偏树*配对堆KDtree,四分树1.4
redegg
·
2019-12-11 19:00
[SCOI2015]情报传递[树剖+主席树]
\)时刻加入一个情报员帮您传情报然后询问\(x,y,c\)指\(x\)到\(y\)多少个人有风险…(大于c)的都有风险…每天风险值+1看起来…不太可做…每次要整棵树+1复杂度也需要\(log^2\)的
树套树
吧但是显然不用啊查询的时候减掉就可以了
_Isaunoya
·
2019-12-10 22:00
[CTSC2008]网络管理 [树剖+整体二分]
这题的复杂度可以到达惊人的\(\log^4\)据说还能跑过去(差点没吓死我直接二分+树剖
树套树
(\(n\log^4n\))一个\(\log\)也不少的4\(\log\)但是我有个\(\log^3\)的树剖上面整体二分
_Isaunoya
·
2019-12-10 22:00
牛客国庆训练 H.千万别用
树套树
链接https://ac.nowcoder.com/acm/contest/1108/H国庆队内训练的题,当时还完全没思路,就没补。现在会树状数组了,倒是能想一想,不过网上题解好多用线段树传数组的?我看不太懂,觉得还是树状数组维护方便多了。建两颗BIT维护分别维护左右端点。由于对于第二种询问操作,ri-li2#definedebug(x)cout<<#x<<":"<
Zzqf
·
2019-11-04 11:00
P3380 【模板】二逼平衡树(
树套树
)
P3380【模板】二逼平衡树(
树套树
)真是超级好玩其实说白了,就是对于线段树每一个节点维护一个平衡树STL依赖症,不能用,只得手写平衡树,真心累学校里花了两节课,码完了238行,回家以后把操作二重复情况判断以后
QYJ060604
·
2019-10-22 19:00
[LuoguP2163][SHOI2007]园丁的烦恼_CDQ分治
题解:
树套树
过不去,那就$CDQ$分治好了。有点小细节,但都是$CDQ$分治必要的。
JZYshuraK_彧
·
2019-10-16 20:00
[cf 997 E] Good Subsegments
像我一样的数据结构弱智选手看到之后可能会想一些
树套树
的操作。但这个题有一种具有代表性的经典方法。(线段树维护历史最小值贡献)注意到一段区间是
Fugtemypt
·
2019-10-12 15:00
打 板 子
(争取每周都打一轮)数据结构:并查集Trie可持久化Trie树状数组线段树树链剖分Splay动态树主席树
树套树
分块点分治cdq分治整体二分莫队带修莫队树上莫队树上带修莫队数学线性筛数论分块gcdexgcd
丶带带派大星
·
2019-09-28 18:00
实时记录
18:46T1
树套树
??19:03别扯淡了,还
树套树
呢,你又不会打。。前缀和优化一下。19:15T1好像又是个别人都能AC的但是我却看不懂的题,不做了好吧,下一个。
_LH
·
2019-09-22 08:00
2019南昌网络赛I:Yukino With Subinterval(CDQ) (树状数组套主席树)
思路:46min交了第一发
树套树
,T了。稍加优化多交几次就过了。不难想到,除了L这个点,其他的点都可以只统计这一段的段首。
nimphy
·
2019-09-12 10:00
洛谷P2617 Dynamic Rankings 动态主席树模板
https://www.luogu.org/problem/P2617动态主席树实际上就是可持久化权值线段
树套树
状数组,即在静态主席树的基础上套了一层树状数组。
a-free-man
·
2019-08-20 20:07
主席树
【
树套树
】 带修主席树
AlgorithmTask给定一个长度为\(n\)的序列,要求支持单点修改和区间\(kth\)查询,强制在线。Limitation如果认为输入数据全部与\(n\)同阶,要求算法时空复杂度\(O(n\log^2n)\)Solution其实这个东西和可持久化线段树没有半毛钱关系,实质上就是树状数组套权值线段树考虑如果不带修,那么可以直接主席树解决。主席树的本质是在每个位置维护一个从\(1\)到该位置的
一扶苏一
·
2019-07-03 00:00
洛谷P3157 [CQOI2011]动态逆序对(
树套树
/BIT+权值线段树)
题目n(nusingnamespacestd;typedeflonglongll;intread(){intcnt=0;charch=0;while(!isdigit(ch))ch=getchar();while(isdigit(ch))cnt=cnt*10+(ch-'0'),ch=getchar();returncnt;}constintN=1e5+10;structnode{intl,r,nu
Code92007
·
2019-06-13 21:22
线段树(权值线段树)/树状数组
ZOJ 2112(
树套树
)
题目链接:http://acm.zju.edu.cn/onlinejudge/showProblem.do?problemId=1112静态的主席树用于记录静态的未修改的序列的贡献(板子)对于单点修改来说,修改id处的数字相当于将该棵主席树以及在此基础上的主席树都修改掉,那么单次修改的复杂度就会达到n*log(n),而这个操作就相当于区间修改吧,那么最适合做区间修改,单点查询的是什么树状数组啊在这
cy41
·
2019-05-30 17:58
线段树
CSU - 2170 千万别用
树套树
DescriptionBobo精通数据结构!他想维护一个线段的集合S。初始时,S为空。他会依次进行q次操作,操作有2种。类型1:给出l, r,向集合S中插入线段[l, r].类型2:给出l, r,询问满足[x, y]∈S且x ≤ l ≤ r ≤ y的线段[x, y]数量。帮Bobo求出每次询问的答案。1 ≤ n, q ≤ 105ti ∈ {1, 2}1 ≤ li ≤ ri ≤ n对于ti = 2的
Ccqingkong
·
2019-04-24 20:13
树套树
(线段树套Splay) 模板 + 详解
(退役的我又诈尸了)又是一个毒瘤东西=-=当初看不懂概念于是没管上个月看见某日报上讲了下发现莫名其妙地看明白了于是就照着概念自己又摸了下来于是差不多成型了然后通过@千年之狐_天才的帮助调了调细节(改权值空树ins时炸掉了然后改成先ins再del这个一定要记得啊qwq)好了开讲了前置知识Splay(对是我的)+线段树+由于询问和主席树差不多最好了解一下?(我的主席树要看好久为了不浪费dalao们的时
Frocean_拾月氷海
·
2019-04-18 17:12
数据结构
bzoj4539: [Hnoi2016]树(主席树+倍增)
思路:真·
树套树
把每棵树所成一个点,然后相当于先把两个点跳到一个块中再求它们的lcalcalca,可以用主席树维护块中编号第kkk大来维护块中对应点,实现块于块之间的
SC.ldxcaicai
·
2019-03-25 18:44
数据结构
#
主席树
#
倍增
bzoj2989: 数列(二进制分组+主席树)
这个时候已经可以上cdqcdqcdq分治+扫描线或者
树套树
切题啦。然而还有一种叫做二进制分组的方法可以支持
SC.ldxcaicai
·
2019-01-21 18:00
#
主席树
#
二进制分组
CDQ分治&整体二分学习个人小结
bzoj1176Mokiabzoj3262陌上花开bzoj1790矩形藏宝地hdu5126四维偏序P3157[CQOI2011]动态逆序对CF762ECSUSTOJ1024:CDQCSUSTOJ1026:强制在线
树套树
整体二分动态区间第
Cwolf9
·
2019-01-17 14:00
上一页
1
2
3
4
5
6
7
下一页
按字母分类:
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
其他