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
区间更新
线段树 - 单点更新/查询,
区间更新
/查询
区间更新
,区间求和:#includeusingnamespacestd;#definelllonglong#definelefsl,m,rt>1;#defineabbintl,intr,intrtconstintN
sugarbliss
·
2020-08-18 09:40
Vases and Flowers
想不到怎么用二分,只好照着常规思路来做题意:两种操作:1.从a号花瓶开始插入f朵花,每个花瓶只能有一朵花,且有花的花的花瓶不能被放入2.清除一个区间内花瓶中的花注意花瓶的编号是0~n-1解题思路:这就是两种不同的
区间更新
尉水风
·
2020-08-18 09:03
线段树
hdu 4614 Vases and Flowers
对于操作2,直接应用
区间更新
的懒操作就可以了,而对于操作1,我们可以查询上区间[0,A-1]里有多少有值为0的数
shiqi_614
·
2020-08-18 09:25
线段树及数据结构
线段树
区间更新
【Lazy标记】【模版、详细注释】【再附上标记永久化模版】
我在前面介绍了线段树的点更新,现在讲解一下
区间更新
区间更新
与点更新不同,它需要更深层次的理解,我讲一下最为基本的Add(L,R,V)与Query(L,R)系列,然后以此为基础可以衍射出其他各种做法:例如
Andres_Lionel
·
2020-08-18 09:45
数据结构
线段树
线段树区间更新
【HDU - 5649】DZY Loves Sorting(线段树,
区间更新
区间查询,思维,01缩数变换,线段树分割)
题干:DZYhasasequencea[1..n]a[1..n].Itisapermutationofintegers1∼n1∼n.Nowhewantstoperformtwotypesofoperations:0lr0lr:Sorta[l..r]a[l..r]inincreasingorder.1lr1lr:Sorta[l..r]a[l..r]indecreasingorder.Afterdoi
韬光养晦_
·
2020-08-18 09:12
HDU
思维
线段树
(
区间更新
开方操作)
一直在想如何用lazy标记,来使
区间更新
不超时间。
哼哼怪
·
2020-08-18 09:39
HDU 4614 Vases and Flowers (二分查找+线段树
区间更新
)
Aliceissopopularthatshecanreceivemanyflowerseveryday.ShehasNvasesnumberedfrom0toN-1.Whenshereceivesomeflowers,shewilltrytoputtheminthevases,oneflowerinonevase.SherandomlychoosethevaseAandtrytoputaflow
i-unique
·
2020-08-18 09:54
ACM
数据结构
线段树
二分
三分
HDU 5029 Relief grain (树链剖分+
区间更新
)
ReliefgrainTimeLimit:10000/5000MS(Java/Others)MemoryLimit:100000/100000K(Java/Others)TotalSubmission(s):3028AcceptedSubmission(s):883ProblemDescriptionThesoiliscrackingupbecauseofthedroughtandtherabbi
Just_JK
·
2020-08-18 09:52
树链剖分
线段树
POJ 3468(线段树区间修改模板题)
poj3468链接题目大意给出两个操作:1:将一个区间里的都数增加c2:查询区间(a,b)内的和总结线段树的区间修改和点修改相比多了一个add数组,add数组的作用是在进行
区间更新
的时候不必将和该区间有关的所有线段都更新
programmy
·
2020-08-18 08:14
模板
线段树
【线段树-
区间更新
】知识点讲解 + 模板题
知识点讲解:博文(https://www.cnblogs.com/TheRoadToTheGold/p/6254255.html)讲得很通俗易懂,copy一下:5、区间修改,即修改一段连续区间的值,我们已给区间[a,b]的每个数都加x为例讲解Ⅰ.引子有人可能就想到了:修改的时候只修改对查询有用的点。对,这就是区间修改的关键思路。为了实现这个,我们引入一个新的状态——懒标记。Ⅱ懒标记(懒标记比较难理
Joseph_L_
·
2020-08-18 08:36
蓝桥杯
专题 线段树 E(
区间更新
,使用lazy标记)
#include#include#include#includeusingnamespacestd;constintMAXN=100010;typedeflonglongLL;intlazy[3*MAXN];//懒惰标记数组intnum[MAXN];structNode{intl,r;LLnSum;}segTree[MAXN*3];voidpushdown(introot,intlen)//len
老铁干了这碗algorithms
·
2020-08-18 08:04
线段树
线段树
区间更新
+题目
给你N个数,Q个操作,操作有两种,‘Qab’是询问a~b这段数的和,‘Cabc’是把a~b这段数都加上c。需要用到线段树的,update:成段增减,query:区间求和介绍Lazy思想:lazy思想,记录每一个线段树节点的变化值,当这部分线段的一致性被破坏我们就将这个变化值传递给子区间,大大增加了线段树的效率。在此通俗的解释我理解的Lazy意思,比如现在需要对[a,b]区间值进行加c操作,那么就从
jianxingzhang
·
2020-08-18 08:43
编程
CodeForces - 566D 并查集
区间更新
优化
题目大意:给定n个人,q个询问。初始状态下,1~n个人独立。接下来q行,每行3个数字type(1,2,3),a,b。如果type==1,则将a和b并在一个集合;如果type==2则将a~b个人并在一个集合;如果type==3,若a和b在一个集合则输出YES,反之输出NO操作2:并查集区间合并优化。nxt[i]:i的后面第一个不和i在同一集合的元素所在的集合(初始化为i+1)。每次区间(a,b)更新
CoderCat.
·
2020-08-18 08:10
并查集
线段树
区间更新
#includeusingnamespacestd;intn,tre[10003*4],intlaz[10003*4];voidpushdown(intnum){if(laz[num]!=0){tre[num*2]+=laz[num];tre[num*2+1]+=laz[num];laz[num*2]+=laz[num];laz[num*2+1]+=laz[num];laz[num]=0;}}vo
cj1064789374
·
2020-08-18 08:20
ACM笔记-5代数
HDU1698(线段树+区间覆盖+lazytag)
解题思路:线段树的裸题,
区间更新
区间查询,在打标记的时候直接赋值就行。
小胡同的诗
·
2020-08-18 08:11
线段树
HDU1698 线段树
区间更新
题意:
区间更新
及求和。思路:模板题。
acunstoppable
·
2020-08-18 08:43
----数据结构----
线段树
NEFU 1266 (线段树
区间更新
)
快乐的雨季Problem:1266TimeLimit:5000msMemoryLimit:65535KDescription 六月到来,长江流域进入了雨季,在长江流域有一个小镇,这个小镇上的百姓都住在一条直线上,共有n户人家,编号为1~n,在直线上按编号依次坐落。进入雨季来,这个小镇共下了q次雨,每次下雨覆盖范围是一个连续的区间(L,R),表示编号为L至R的家庭位于降雨区,降雨量为x。镇长非常关心
Timeclimber
·
2020-08-18 08:45
线段树
hdu 4614 Vases and Flowers(线段树
区间更新
+二分)
区间更新
,区间求和,这些基本的操作线段树都可以O(log(n))的时间范围内完成。操作2,很显然就是线段树的区间求和,求出[
HelloWorld10086
·
2020-08-18 07:04
线段树
2013-2014 ACM-ICPC Brazil Subregional Programming Contest
不知不觉又欠了好多好多题目没有补…因为第一次弄弄成了mashup就️题目链接了A签到B最初考虑的时候认为可以先排序(比如按照y轴高度),然后按照从高到低的顺序用线段树进行
区间更新
、单点查询…后来发现排序出大问题
rqdmap
·
2020-08-18 07:04
ACM
Vases and Flowers HDU - 4614(线段树
区间更新
)
Aliceissopopularthatshecanreceivemanyflowerseveryday.ShehasNvasesnumberedfrom0toN-1.Whenshereceivesomeflowers,shewilltrytoputtheminthevases,oneflowerinonevase.SherandomlychoosethevaseAandtrytoputaflow
浮生一朝
·
2020-08-18 07:00
线段树
线段树模板(单点更新,
区间更新
,RMQ)
Bryce1010模板https://blog.csdn.net/Fire_to_cheat_/article/details/784246961.单点更新说明单点更新,区间求和(你问我单点求和??你就不会把区间长度设为0啊?)•sum[]为线段树,需要开辟四倍的元素数量的空间。•build()为建树操作•update()为更新操作•query()为查询操作时间复杂度:O(nlogn)使用方法bu
bryce1010
·
2020-08-18 07:59
【ACM之路Bryce模板】
HDU 4027(线段树
区间更新
+区间求和)-Can you answer these queries?
题目:Alotofbattleshipsofevilarearrangedinalinebeforethebattle.Ourcommanderdecidestouseoursecretweapontoeliminatethebattleships.Eachofthebattleshipscanbemarkedavalueofendurance.Foreveryattackofoursecretw
古城白衣少年i
·
2020-08-18 07:02
线段树
hdu4027 线段树(区间开平方,区间求和)
本题的线段树
区间更新
不能用
区间更新
做,因为不满足:区间和的更新==区间内每个数更新的和所以实际上是单点更新,单点更新不是退化成On2了吗?
weixin_33809981
·
2020-08-18 07:28
hdu 4614(
区间更新
)
这里写代码片题意:有n个花瓶编号从0到n-1,初始花瓶都是空的,然后有两个操作,1ab表示从位置a开始往后面找b(不够b个也可以)个空花瓶插花,输出插花的首位置和末位置,2ab表示输出区间[a,b]有多少个花,并且把这个区间内所有花都拿走。题解:很容易想到用线段树维护区间内有多少个空花瓶,然后操作2可以直接用普通的区间查询和区间修改,操作1可以看作先查询前a-1个花瓶有num个是空的,然后查询第n
路小白_zZ
·
2020-08-18 07:53
ACM-线段树
hdu4614 线段树
区间更新
很恶心的区间查询更新题目。两个操作,一个是向给定的l向后插入k个元素,输出插入的起始点和结束点;一个是将l和r之间的部分清0,输出清0个数。这里更新的操作很好完成,查询的就比较恶心了,写了三个查询函数,分别查询从l开始第一个空的位置,从l开始第k个空的位置,以及查询区间有多少被占用的位置。第一个查询很好完成,先序遍历加上记录区间有多少可用点,找到第一个可用的就可以返回了。第二个比较恶心,有可能存在
查尔斯欢
·
2020-08-18 07:52
线段树
线段树的区间操作(
区间更新
,区间查询)
区间操作structnode{intl,r,sum,lazy;}tr[maxn>1;build(m>1;//中间值if(rmid)updata(m>1;inttemp;if(rmid)temp=query(m<<1|1,l,r);//遍历右半边elsetemp=query(m<<1,l,mid)+query(m<<1|1,mid+1,r);//遍历(l,mid),(mid+1,r)returnte
qdu_zhaiH
·
2020-08-18 07:15
日常刷题
HDU 4614 Vases and Flowers (2013多校第二场线段树)
区间更新
,区间求
paradiserparadiser
·
2020-08-18 07:31
数据结构
HDU 4614 (13年多校第二场1004)裸线段树
区间更新
,区间求和,这些基本的操作线段树都可以logN的时间范围内完成。操作2,很显然就是线段树的区间求和,求出[a,b]范围内的花朵的数量,
kdqzzxxcc
·
2020-08-18 07:53
数据结构
HDU3577【线段树+
区间更新
+最值查询】
FastArrangementProblemDescriptionChinesealwayshavetherailwayticketsproblembecauseofits’hugeamountofpassangersandstations.Nowgovermentneedyoutodevelopanewticketsquerysystem.Onetraincanjusttakekpassange
安静de想着网名
·
2020-08-18 07:52
解题报告
数据结构题
Algorithm
Data
structure
hdu 4614
区间更新
,区间求和,这些基本的操作线段树都可以logN的时间范围内完成。操作2,很显然就是线段树的区间求和,求出[a,b]范围内的花朵的数量,
发奋屠强
·
2020-08-18 07:30
线段树
HDU 4614 线段树(
区间更新
)+二分
题意有0-N-1个花瓶,两种操作。一种操作是从某个点开始,放F朵花,如果一朵花都不能放,则输出“Cannotputanyone.”,否则输出放花的区间。另一种操作是清理A到B区间内的所有花,输出清理的数量。题解感觉这道题还是有一些难度的,主要是要对题意有着比较深刻的理解。题目最坑的地方在于,可以放0朵花。更坑的是,放0朵花的话,比如在X点放0朵花,那么X点就会变成没有花的点。。。因此更新的时候,0
zhenlingcn
·
2020-08-18 07:58
ACM数据结构问题
hdu5239线段树
区间更新
,区间平方,取模
DoomTimeLimit:12000/6000MS(Java/Others)MemoryLimit:524288/524288K(Java/Others)TotalSubmission(s):2137AcceptedSubmission(s):559ProblemDescriptionTHEENDISCOMINGGGGGG!Mikehasgotstuckonamysterymachine.Ifh
sdauguanweihong
·
2020-08-18 02:17
线段树
Educational Codeforces Round 89(A-C) A数学, B
区间更新
, c贪心。(19退役场,以后慢慢做吧,欲速则不达(速度的提升还是要靠经验的积累和码速))
A.ShovelsandSwords题意:给你stick(棍)和diamonds的个数。要你转换成shovel(铁铲)或swords。(shovel需要2*stick1*diamond。sword需要1*stick2*diamond)要你把他们卖掉,卖掉shovel和swords都可以得到1*emerald(绿宝石)题目给你stick和diamond数,问你最多有多少个绿宝石。思路:其实就是2,1
scau_sleep(今天写bug了吗?
·
2020-08-18 02:42
贪心&&暴力
cf菜鸡的失恋(试炼)
codeforces 438D The Child and Sequence(线段树:单点更新+区间取模+区间和)
(1 ≤ n, m ≤ 1e5).(1 ≤ a[i] ≤ 1e9)分析:看到
区间更新
,应该想到懒惰标记。但是用懒惰标记应该满足两个条件:标记可以合并可以快速更新区间信息。
nbl97
·
2020-08-18 00:35
线段树
树状数组(
区间更新
,单点查询)
constintM=500005;inta[M],c[M],c1[M];intn,m;intlowbit(intt){returnt&(-t);}voidupdate(intl,intr,intval){//
区间更新
只相当于更新
accedhy
·
2020-08-17 21:15
c++算法
bzoj 1798 [Ahoi2009]Seq 维护序列seq
id=1798线段树
区间更新
:1.区间同同时加上一个数2.区间同时乘以一个数#include#include#include#include#definelcroot>1;built(lc,l,mid)
GadyPu
·
2020-08-17 19:31
线段树
Nico Number ZOJ - 3886(线性筛+线段树
区间更新
取模)
#include#include#include#includeusingnamespacestd;#definelsonl,mid,rt>1;build(lson);build(rson);pushup(rt);}intquery(intL,intR,intl,intr,intrt){if(L>1;intans=0;if(Lmid)ans+=query(L,R,rson);returnans;}
leekerian
·
2020-08-17 18:27
线段树
Educational Codeforces Round 54 E - Vasya and a Tree 树上:离线+dfs+树状数组
n个结点的树,开始每个结点权值为0,现在有q个操作,每个操作包含v,d,x,表示第v号结点,以及再往下(对于树:他的孩子方向)遍历d层,访问到的结点权值都加上x;输出所有结点的权值思路:一下想到的就是
区间更新
冰冰的小宝贝
·
2020-08-17 17:46
DFS
树状数组
codefoces
牛客练习赛22 E 简单数据结构1(拓展欧拉定理+树状数组)
题目解析:首先了解欧拉定理1欧拉定理2再是欧拉线性筛线性筛最后是拓展欧拉定理还有小的知识是树状数组的
区间更新
+单点查询链接上官方题解先线性筛phi然后考虑用拓展欧拉定理降幂(这里a的指数部分应该是)我们发现对一个数取欧拉函数
Just_JK
·
2020-08-17 06:04
树状数组
数学题
CodeForces 620E New Year Tree
然后就是
区间更新
和区间查询了。某段区间的颜色种类可以用位运算来表示,方便计算。
weixin_34008805
·
2020-08-17 03:00
C - Alyona and Spreadsheet CodeForces - 777C (思维)
用一个数组记录每列的转折点(相当于记录出每列连续不减的区间),然后用一个一位数组dp,根据这个
区间更新
dp数组,位于i行的最
DeathYmz
·
2020-08-16 23:26
codeforce
383C - Propagating tree 线段树加时间戳
首先每次处理以一个点为根的所有子树点就要用时间戳加线段树
区间更新
因为每次add一个点,那么加减是交替的,所以线段树存储深度为奇数的点的add值最后查询如果是偶数ans=-ans;#include#include
acblacktea
·
2020-08-16 23:32
线段树
线段树 + 字符串Hash - Codeforces 580E Kefa and Watch
analyse:n最大为1e5,且m+k最大也为1e5,这就要求操作1和操作2都要采用logn的算法,所以用线段树.对于更新操作,使用
区间更新
就可解决。
weixin_34204057
·
2020-08-15 11:55
【线段树
区间更新
+ 剪枝】
题意有n个敌方战舰,每一艘战列舰都标明其耐力值。对于我们的秘密武器的每一次攻击,它都可以通过使战舰的耐久力减到原耐久力值的平方根来降低其连续的耐久力。现在给出m个查询,每个查询包含T,X,YT=1;查询x到y战舰的耐力总值T=0;x到y的每搜战舰的耐力值减到原来的一半思路ps:本以为是一个简单的区间修改+区间查询,结果T了。看了题解才发现可以剪枝。当每个战舰的耐力值减少到1时,就不会再减少了,因为
^_^vito
·
2020-08-15 11:58
#
线段树
树状数组
hdu5454 Excited Database (线段树)
hdu5454ExcitedDatabase线段树
区间更新
关键是想到和怎么用比赛是想的二维线段树之类的苦于不知道怎么斜着更新所以就弃了题解上说的维护a[i]*i和a[i]其实是这样的:假设我们有4*3的矩阵
Hivoodoo
·
2020-08-15 10:32
......数据结构
ACM
............线段树
bzoj4636 蒟蒻的数列(离散化+线段树)
因为是只有最后询问一次和,所以可以离散化之后,
区间更新
最大值,线段树维护即可。叶子节点l表示[a[l],a[l+1])。答案就是每个点最后的值乘上这个点所代表的区间。
Icefox_zhx
·
2020-08-14 06:08
bzoj
线段树
离散化
BZOJ 3211 线段树
区间更新
区间求和
传送门:题目题意:给一个序列,有两种操作:给区间[l,r],区间的每个值都开根号查询区间[l,r]的sum题解:纯的线段树,
区间更新
,区间求和,套个模板就好。
傻蛋的阿简
·
2020-08-13 18:05
数据结构
【
区间更新
+多种操作】K - Transformation HDU - 4578
K-TransformationHDU-4578Yuanfangispuzzledwiththequestionbelow:Therearenintegers,a1,a2,…,an.Theinitialvaluesofthemare0.Therearefourkindsofoperations.Operation1:Addctoeachnumberbetweenaxandayinclusive.I
Cherry_0525
·
2020-08-13 17:24
HDU1698 线段树+
区间更新
+懒惰标记-Just a Hook
DescriptionInthegameofDotA,Pudge’smeathookisactuallythemosthorriblethingformostoftheheroes.Thehookismadeupofseveralconsecutivemetallicstickswhichareofthesamelength.NowPudgewantstodosomeoperationsonthe
geekword
·
2020-08-13 14:31
线段树
线段树(
区间更新
)
#include#includeusingnamespacestd;typedeflonglongll;lla[100005];structnode{intl,r;llsum,lazy;}tree[500005];intn;voidUpdown(intrt)//更新区间的值{tree[rt].sum=tree[rt=r)ans+=Query(l,r,rt=r)Update(l,r,val,rt<<
god_alonely
·
2020-08-13 13:26
线段树
上一页
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
其他