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
-----线段树
BZOJ2957
线段树
#includeusingnamespacestd;typedeflonglongll;constintN=1e5+10;structSegmentTree{intl,r,ans;doubleval;#definel(x)Tree[x].l#definer(x)Tree[x].r#defineans(x)Tree[x].ans#defineval(x)Tree[x].val}Tree[N*4];v
Gipsy_Danger
·
2019-02-08 11:09
数据结构
【最短路优化建图(dij)+
线段树
】BZOJ4699 树上的最短路
【题目】BZOJ一棵nnn个节点的无向树,边有边权。另有mmm条通道,形如(a,b,c,d,v)(a,b,c,d,v)(a,b,c,d,v),表示(a,b)(a,b)(a,b)路径上所有点向(c,d)(c,d)(c,d)路径上所有点都连了一条边权为vvv的有向边。求任意节点出发到达KKK的最短路。n≤2.5×105,m≤105n\leq2.5\times10^5,m\leq10^5n≤2.5×10
Dream_Lolita
·
2019-02-04 22:10
图论-最短路
数据结构-线段树
主席树(知识学习+板子总结)
概念主席树以前i个值建第i棵
线段树
,新来的值只会新开一条链,对于第一棵树而言,即普通的权值
线段树
,或者理解成一条链也无妨结构体的权值
线段树
写法利用前缀和的方法统计[l,r]内各个数出现的数量前提保证a1
Code92007
·
2019-02-04 16:22
知识点总结
主席树(知识学习+板子总结)
概念主席树以前i个值建第i棵
线段树
,新来的值只会新开一条链,对于第一棵树而言,即普通的权值
线段树
,或者理解成一条链也无妨结构体的权值
线段树
写法利用前缀和的方法统计[l,r]内各个数出现的数量前提保证a1
Code92007
·
2019-02-04 16:22
知识点总结
线段树
——校门外的树
题目描述校门外有很多树,有苹果树,香蕉树,有会扔石头的,有可以吃掉补充体力的……如今学校决定在某个时刻在某一段种上一种树,保证任一时刻不会出现两段相同种类的树,现有两个操作:K=1,K=1,读入l、r表示在区间[l,r]中种上一种树,每次操作种的树的种类都不同K=2,读入l,r表示询问l~r之间能见到多少种树(l,r>0)输入第一行n,m表示道路总长为n,共有m个操作接下来m行为m个操作输出对于每
skyleafemp
·
2019-02-04 14:03
线段树
权值
线段树
(知识学习+板子总结)
概念和
线段树
一样的函数,p这个区间里维护的是这段区间里的数出现的次数每出现一个数x,叶子结点[x,x]这个区间就+1,删除就-1支持动态查询第k大的数、数x出现的最小rank、寻找x的前驱(即小于x的最大的数
Code92007
·
2019-02-03 23:50
知识点总结
hdu2871 Memory Control(
线段树
区间合并)
题意N个空间,M次操作有以下几种操作:①Newlen开辟len个单位的空间,如果能开输出Newat位置,否则输出RejectNew②Freepos删除pos这个位置所在的那个块如果能删输出Freefrom块首to块尾,否则输出RejectFree③Getnum输出从左到右的第num块,如果存在输出Getat块首否则输出RejectGet④Reset清空所有块,并输出ResetNow思路来源http
Code92007
·
2019-02-03 17:21
线段树
区间合并
线段树(权值线段树)/树状数组
【数据结构】树状数组
【数据结构】树状数组讲到了
线段树
,那就顺便讲讲树状数组吧。
ZONE画派
·
2019-02-01 23:56
数据结构与算法面试知识点汇总(超全)
文章目录一、哈希函数和哈希表01哈希函数02哈希表二、布隆过滤器三、一致性哈希四、并查集01具体实现02优化03代码实现五、前缀树(trie树)六、B树和B+树七、
线段树
01
线段树
的优势02
线段树
实现一
csdn_dzh
·
2019-01-31 00:00
数据结构
Jzoj P4238 纪念碑___
线段树
+扫描线
题目大意:一个长为nnn,宽为mmm的矩形.它由n∗mn*mn∗m个1∗11*11∗1的正方形组成。左下角的正方形的坐标为(1,1)(1,1)(1,1),右上角的正方形的坐标为(n,m)(n,m)(n,m)。有ppp片土地被用来修建建筑,,每一个建筑可以看做是一个左下角为(x1,y1)(x1,y1)(x1,y1),右上角为(x2,y2)(x2,y2)(x2,y2)的矩形。问能在这个n∗mn*mn∗
disPlayLzy_
·
2019-01-30 08:38
C++
线段树
扫描线
线段树
——F - I Hate It
很多学校流行一种比较的习惯。老师们很喜欢询问,从某某到某某当中,分数最高的是多少。这让很多学生很反感。不管你喜不喜欢,现在需要你做的是,就是按照老师的要求,写一个程序,模拟老师的询问。当然,老师有时候需要更新某位同学的成绩。Input本题目包含多组测试,请处理到文件结束。在每个测试的第一行,有两个正整数N和M(0#include#include#includeusingnamespacestd;#
skyleafemp
·
2019-01-28 21:35
线段树
线段树
——I - 维护序列
老师交给小可可一个维护数列的任务,现在小可可希望你来帮他完成。有长为nn的数列,不妨设为a1,a2,⋯,ana1,a2,⋯,an。有如下三种操作形式:把数列中的一段数全部乘一个值;把数列中的一段数全部加一个值;询问数列中的一段数的和,由于答案可能很大,你只需输出这个数模PP的值。Input第一行两个整数nn和PP;第二行含有nn个非负整数,从左到右依次为a1,a2,⋯,ana1,a2,⋯,an;第
skyleafemp
·
2019-01-28 18:32
线段树
Hacker Cups and Balls Gym - 101234A 二分+
线段树
题目:题目链接题意:有编号从1到n的n个球和n个杯子.每一个杯子里有一个球,进行m次排序操作,每次操作给出l,r.如果l2#include3#include4#include5#include6#include7#include8#include9#include10#include11#include12#include13#include14#include15#include1617#def
FanJiaming
·
2019-01-27 21:00
线段树
———C - 区间最大值 II
给一个有n个整数的序列a1,a2,a3,...,an,然后有q个提问,每个提问为两个整数i、j,(i#include#includeusingnamespacestd;#defineN400005inta[N],sum[N];voidbuild(intl,intr,intrt){if(l==r){sum[rt]=a[l];return;}intmid=(l+r)/2;build(l,mid,2*r
skyleafemp
·
2019-01-27 10:21
线段树
【
线段树
】1108E2 Array and Segments (Hard version) & 1108E1 Array and Segments (Easy version)
Theonlydifferencebetweeneasyandhardversionsisanumberofelementsinthearray.Youaregivenanarrayaconsistingofnintegers.Thevalueofthei-thelementofthearrayisai.Youarealsogivenasetofmsegments.Thej-thsegmentis
Floraqiu
·
2019-01-24 20:23
线段树
数据结构
-
线段树
2019 CCPC Wannafly Camp day3
wls是带着题目来给我们讲常见的数据结构运用,比如堆,并查集,
线段树
,平衡树等等。下午原本以为是数据结构专题训练,便戏耍的和lyy说下午你专场我回去了哈。结果下午题目比day1,day2还难,而且不是
Anoyer
·
2019-01-22 21:00
2019
Wannafly
Winter
Camp
bzoj1758: [Wc2010]重建计划(01分数规划+长链剖分+
线段树
)
传送门长链剖分好题。题意简述:给一棵树,问边数在[L,R][L,R][L,R]之间的路径权值和与边数之比的最大值。思路:用脚指头想都知道要01分数规划。考虑怎么checkcheckcheck。发现就是求在转化成真·边权之后有没有长度在[L,R][L,R][L,R]之间的路径权值是大于0的。然后可以设计状态fi,jf_{i,j}fi,j表示iii开头长度为jjj的路径最大值,这个可以用长链剖分优化转
SC.ldxcaicai
·
2019-01-21 13:51
#
线段树
#
01分数规划
#
长链剖分
bzoj2441: [中山市选2011]小W的问题(树状数组+权值
线段树
)
传送门数据结构优化计数菜题。题意简述:给nnn个点问有多少个www型。www型的定义:由5个不同的点组成,满足x1<x2<x3<x4<x5,x3>x1>x2,x3>x5>x4x_1<x_2<x_3<x_4<x_5,x_3>x_1>x_2,x_3>x_5>x_4x1x1>x2,x3>x5>x4思路:本蒟蒻
SC.ldxcaicai
·
2019-01-21 12:37
#
线段树
#
树状数组
bzoj3999: [TJOI2015]旅游(树链剖分)
然后可以用
线段树
优化这个过程。对于当前的
线段树
节点,它的答案=max(左儿子答案,右儿子答案,右儿子最大值−左儿子最小值)max(左儿子答案,右儿子答案,右儿子最大值-左儿子
SC.ldxcaicai
·
2019-01-20 14:13
#
树链剖分
bzoj5457: 城市(
线段树
合并)
传送门
线段树
合并菜题。题意简述:给一棵树,每个节点有bib_ibi个aia_iai民族的人,问对于每棵子树,子树中哪个民族的人最多,有多少人。思路:直接上
线段树
合并,边合并边维护答案即可。
SC.ldxcaicai
·
2019-01-19 15:52
#
线段树合并
Legacy(
线段树
+最短路)
D.Legacytimelimitpertest2secondsmemorylimitpertest256megabytesinputstandardinputoutputstandardoutputRickandhisco-workershavemadeanewradioactiveformulaandalotofbadguysareafterthem.SoRickwantstogivehisl
Amovement
·
2019-01-19 09:56
Ynoi 2017 由乃的OJ
先对树进行树链剖分,每一条重链维护一棵
线段树
,每个
线段树
区间维护两个数组(t0,t1)(t_0,t_1)(t0,t1)分别表示某个数某一位为0/10/10/1时经过这段区间的运算这一位会变成000还是111
DoBelieve
·
2019-01-16 22:41
线段树
树链剖分
bzoj4399: 魔法少女LJJ(
线段树
合并)
传送门
线段树
合并菜题(然而findfindfind函数写错位置调了好久)支持的操作题目写的很清楚了,然后有一个神奇的限制c≤7c\le7c≤7要注意到不然会去想毒瘤
线段树
的做法。
SC.ldxcaicai
·
2019-01-16 19:07
#
线段树合并
【思维题+
线段树
合并】UOJ418 【集训队作业2018】三角形
【题目】原题地址一棵nnn个节点的有根树,每个节点有权值wiw_iwi。有两种操作:从手中取wiw_iwi个石子放在iii节点上,此操作要求所有儿子jjj上都有wjw_jwj个石子将节点iii上的石子收回手中对于每个节点iii,为了在iii上放wiw_iwi个石子,手上至少要有多少个石子。n≤105,wi≤109n\leq10^5,w_i\leq10^9n≤105,wi≤109【解题思路】正着做似
Dream_Lolita
·
2019-01-15 21:27
数据结构-线段树
【思维题+
线段树
合并】UOJ418 【集训队作业2018】三角形
【题目】原题地址一棵nnn个节点的有根树,每个节点有权值wiw_iwi。有两种操作:从手中取wiw_iwi个石子放在iii节点上,此操作要求所有儿子jjj上都有wjw_jwj个石子将节点iii上的石子收回手中对于每个节点iii,为了在iii上放wiw_iwi个石子,手上至少要有多少个石子。n≤105,wi≤109n\leq10^5,w_i\leq10^9n≤105,wi≤109【解题思路】正着做似
Dream_Lolita
·
2019-01-15 21:27
数据结构-线段树
2019年1月15日训练日记
今天的比赛:A题组合数+二进制推一下就出来了,B题构造,C贪心(按a/b大的排,不是一次两次做这种题了)+dp,D题
线段树
/树状数组,关键是控制字典树最小。
LSD20164388
·
2019-01-15 19:49
训练日记
异或线性基心得
本来是11月底学的这个东西,这两天cf两场都出了异或线性基,发现自己做题量还是不够,总结一下cf1·11的G是个异或线性基的裸题cf1·13的F是个异或线性基与
线段树
结合的题在这里
线段树
的合并操作,就可以理解成两个异或线性基的并操作
Code92007
·
2019-01-15 11:50
知识点总结
2019年1月14日训练日记
我博客里几乎写过原题,见图论-牛客网25E),D题BFS预处理O(1)回答,之前做过很多类似的(比赛的时候时间不够,没做出来),E题简单DP(二维三维皆可),F待补(据说是DP),G题RMQ模板(也可
线段树
LSD20164388
·
2019-01-14 22:50
训练日记
bzoj4530: [Bjoi2014]大融合(
线段树
合并)
传送门
线段树
合并菜题。题意简述:nnn个点,支持连边以及查询一个点所在连通块中经过这个点的路径条数,保证这张图时刻为森林。
SC.ldxcaicai
·
2019-01-14 18:35
#
线段树合并
点分治经典_动态点分治
前置知识:静态点分治(主要是容斥思想,一般看出来是点分治的话,想到怎么容斥剩下的操作就很机械了,还有一种LCT,目前是我的盲区),
线段树
(树状数组)。
FormerAutumn
·
2019-01-13 11:00
UOJ#191. 【集训队互测2016】Unknown
平衡树也行但是这个题目卡空间,数组一不小心就爆了卡一卡也能过考虑其它空间常数小并且又好写的做法根据一般的二进制分组的方法,每次这个块满了就合并儿子的凸包这样显然不对,只要又删又加就假了我们换一种方法,每次这个块满了就合并
线段树
同一层前一个节点的儿子的凸包这样每次都要花费
Cyhlnj
·
2019-01-11 12:00
POJ 2823 Sliding Window (单调队列 |
线段树
)
SlidingWindowTimeLimit:12000MSMemoryLimit:65536KTotalSubmissions:29829Accepted:8863CaseTimeLimit:5000MSDescriptionAnarrayofsizen≤106isgiventoyou.Thereisaslidingwindowofsizekwhichismovingfromtheverylef
weixin_33866037
·
2019-01-08 01:53
c/c++
二维
线段树
#includeusingnamespacestd;constintmaxn=1010;intn,m,ans,tree[maxn>1;//如果当前区间不合适,继续二分if(q1ymid)update_y(q1,q2,ymid+1,yr,xt,yt>1;//如果当前区间不合适,继续二分if(p1xmid)update_x(p1,q1,p2,q2,xmid+1,xr,xt>1;//二分if(yymid
_Jim_
·
2019-01-06 11:21
ACM笔记-5代数
bzoj5291: [Bjoi2018]链上二次求和(
线段树
)
传送门
线段树
基础题。题意:给出一个序列,要求支持区间加,查询序列中所有满足区间长度在[L,R][L,R][L,R]之间的区间的权值之和(区间的权值即区间内所有数的和)。
SC.ldxcaicai
·
2019-01-04 01:24
#
线段树
SDOI2011_染色
SDOI_染色背景:很早就想学习树链剖分,趁着最近有点自由安排的时间去学习一下,发现有个很重要的前置知识——
线段树
。
FormerAutumn
·
2019-01-03 09:00
【[SHOI2015]脑洞治疗仪】
SHOI2015会考这么板子的题,但是我又sb了,又sb了,又sb了,又没有1A显然我是凉了这道题有三个操作区间清零将一个区间清零,之后补到另一个区间去,但是有可能补不满询问一个区间内最大全零子串显然这都是
线段树
的板子操作
asuldb
·
2019-01-01 21:00
【康娜的
线段树
】
挺妙的一道期望题首先经过一番简单的思考就会发现对于
线段树
上的一个叶子节点\(x\),深度为\(deep[x]\),那么走到这个节点的概率就是\(2^{deep[x]}\)我们设\(val[x]\)表示叶节点
asuldb
·
2019-01-01 21:00
【[IOI2014]Wall 砖墙】
好像随便一卡就最优解了malao告诉我这道题挺不错的,于是就去写了写这两个操作很有灵性啊,感觉这么有特点的数大概是需要分块维护的吧但是并没有什么区间查询,只是在最后输出整个序列于是我们就直接用
线段树
维护设置两个标记
asuldb
·
2019-01-01 21:00
【CF套题】Good Bye 2018
E想了个
线段树
维护阶梯,没看wiki,出来才发现是公式题。F想了个凸包,结果是个贪心。
Dream_Lolita
·
2018-12-31 21:19
codeforces
线段树
单点更新
#include#defineN10010usingnamespacestd;inttre[N*4];voidbuild(intnum,intle,intri){if(le==ri){scanf("%d",&tre[num]);return;}intmid=(le+ri)/2;build(num*2,le,mid);build(num*2+1,mid+1,ri);tre[num]=tre[num*
_Jim_
·
2018-12-31 00:05
ACM笔记-5代数
线段树
建树 单点修改 单点/区间查询
线段树
(sgementtree)是一种分治思想的二叉树结构,用于在区间上进行信息统计。与按照二进制位进行区间划分的树状数组相比,
线段树
是一种更加通用的结构:1.
线段树
的每个节点都代表一个区间。
cnyali_wyf
·
2018-12-29 18:28
线段树
【总结】 BZOJ1000~1099板刷计划
1000A+B这种入门题就不用写了吧.1008快速幂简单题,直接容斥一下就好了.1015考虑对于从属关系建图,然后直接加入并查集就好了.1018
线段树
维护连通性好题.1036树链剖分入门题,直接搞就好了
cjgjh
·
2018-12-26 14:00
无聊的BUG库¥
Title:高并发情况下的nil异常Background优化
线段树
,原先为每次都采用的是新生成的方式,既new的方式,高并发情况下不可取辅助类:一个LinkedList充当队列,BFS遍历这颗二叉树,从而达到构建树的功能
Coder_Joker
·
2018-12-21 19:57
Bug
无聊的BUG库¥
Title:高并发情况下的nil异常Background优化
线段树
,原先为每次都采用的是新生成的方式,既new的方式,高并发情况下不可取辅助类:一个LinkedList充当队列,BFS遍历这颗二叉树,从而达到构建树的功能
Coder_Joker
·
2018-12-21 19:57
Bug
2018.12.15【NOIP提高组】模拟A组
那么我们便可以用
线段树
来维护每一个
chiyankuan
·
2018-12-19 19:08
【NOIP提高组】模拟A组
【LuoguP4433】[COCI2009-2010#1] ALADIN(含类欧几里得算法推导)
Q\leq10^5N≤109,Q≤105Sol每次操作就是把操作区间[L,R][L,R][L,R]中的数赋值成:(X−L+1)∗AmodB(X-L+1)*A\mod\B(X−L+1)∗AmodB考虑用
线段树
维护
NeosKnight
·
2018-12-18 22:36
======数论======
======题解======
类欧几里得算法
权值
线段树
工作原理
权值
线段树
工作原理权值
线段树
是用来求第k大(或小的)。假设我们由一串数:1,5,2,7,4,6,3。要你求每次按照顺序插入一个数,求当前的第3小,这样的题目我们就可以用权值
线段树
了。
_Jim_
·
2018-12-18 00:44
ACM笔记-2串树
主席树工作原理
主席树工作原理如果只用“数值区间”的
线段树
是不能求出“区间第k大”的,因为它只能求出一个序列整体的“第k大”,而不能拓展到任意区间。
_Jim_
·
2018-12-17 00:32
ACM笔记-2串树
ACM新手赛体会
通过这次ACM新手赛我了解到了:程序=算法+数据结构,而数据结构和算法我还有很多很多是不甚了解的,
线段树
、AC自动机、KMP算法、DP、图论、平衡二叉树等等。看着都头晕,但是又有谁是生来就会这些呢?
梁锋华
·
2018-12-15 13:00
#184-[
线段树
]天才的记忆
Description原题来自:VijosP1512从前有个人名叫WandNandB,他有着天才般的记忆力,他珍藏了许多许多的宝藏。在他离世之后留给后人一个难题(专门考验记忆力的啊!),如果谁能轻松回答出这个问题,便可以继承他的宝藏。题目是这样的:给你一大串数字(编号为1到N,大小可不一定哦!),在你看过一遍之后,它便消失在你面前,随后问题就出现了,给你M个询问,每次询问就给你两个数字A,B,要求
2017gdgzoi999
·
2018-12-15 08:38
刷题
gdgzoi刷题
上一页
123
124
125
126
127
128
129
130
下一页
按字母分类:
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
其他