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
线段树&树状数组
【BZOJ1095】【ZJOI2007】捉迷藏 括号序列+
线段树
维护
原题链接1095:[ZJOI2007]Hide捉迷藏TimeLimit:40SecMemoryLimit:162MBSubmit:2109Solved:868[Submit][Status][Discuss]Description捉迷藏Jiajia和Wind是一对恩爱的夫妻,并且他们有很多孩子。某天,Jiajia、Wind和孩子们决定在家里玩捉迷藏游戏。他们的家很大且构造很奇特,由N个屋子和N-1
_傲寒
·
2020-08-18 00:38
状态压缩(初识)
(k&-k)在状态压缩和
树状数组
中都经常能够看到,那么(k&-k)的值是什么含义呢?这个值是把k的二进制的高位1全部清空,只留下最低位的1,当然如果只有一位1,则保留等于k本身。
我爱AI_AI爱我
·
2020-08-18 00:35
线段树
文章目录
线段树
修改和查询:斑点蛇
线段树
用于区间查询和修改,优化其时间复杂度区间长度为len=10,每个节点l和r表示区间l-r的,根节点为1-10对于每个节点,左孩子的区间为:[l-(l+r)/2]右孩子的区间为
战场医疗兵
·
2020-08-18 00:39
算法模板
3xian的acm
其深厚的数据结构功底倍受推崇,对
线段树
的组织、动态树以及字符串类数
playwfun
·
2020-08-18 00:55
远方的脚印
计算机
编码
人物
ZOJ 4100 浙江省第16届大学生程序设计竞赛 A题 Vertices in the Pocket
就是加入的边都连接两个不同的联通块最多联通块个数,首先要把各个联通块补成完全图,如果还有剩的边,则按照联通块的大小从大到小排序,每次合并最大的两个联通块,直到没有边剩下问题的关键是如何求解最多联通块个数,暴力排序是肯定不行的
线段树
Spy97
·
2020-08-18 00:50
线段树
思维
CC March18 Pishty And Triangle
线段树
合并信息(三角形,斐波那契)
题意:长度为n的数列a,Q次操作.操作1:给出(pos,x)令a[pos]=x操作2:给出[L,R]问(a[L],a[L+1]..a[R])能组成的三角形中周长最长的为多少?n,Q=a[i+1]+a[i+2]若一直无法组成三角形则a[i]将以斐波那契数列的增长速度递减下去.因为1usingnamespacestd;typedeflonglongll;constintN=2e5+5,K=51;int
orz11111111
·
2020-08-18 00:18
数据结构
------
基础
CodeChef
codeforces 438D The Child and Sequence(
线段树
:单点更新+区间取模+区间和)
题意:一个n个数的序列。对它进行3种操作。1lr:输入a[l,r]的和2lrx:令[l,r]所有数对x取模3kx:令a[k]=x每到操作1时输出和。(1 ≤ n, m ≤ 1e5).(1 ≤ a[i] ≤ 1e9)分析:看到区间更新,应该想到懒惰标记。但是用懒惰标记应该满足两个条件:标记可以合并可以快速更新区间信息。但是这道题不满足条件2,也就是无法快速更新区间和。而逐个更新每个数取模,仿佛又太慢
nbl97
·
2020-08-18 00:35
线段树
bzoj 1452 //1452:[JSOI2009] Count //[JSOI2009]计数问题 二维
树状数组
bzoj1452//1452:[JSOI2009]Count//[JSOI2009]计数问题//在线测评地址https://www.lydsy.com/JudgeOnline/problem.php?id=1452更多题解,详见https://blog.csdn.net/mrcrack/article/details/90228694BZOJ刷题记录bzoj145239340kb6128msC++
mrcrack
·
2020-08-18 00:40
跟着大佬学算法
bzoj 1095 捉迷藏(
线段树
)
题外话最近课程不是很紧,准备按AC率版切bz,争取一天一道题以上。然后我喜闻乐见的发现之前剩下的题基本都是数据结构>_=b1时第二段]就被消完了,两段[连在一起,例如:]][[[+]][[=]][[[(?..反了?。。。这样,就得到了一个十分有用的结论:当a2=b1时,(a,b)=(a1,b1-a2+b2)。由此,又得到几个简单的推论:(i)a+b=a1+b2+|a2-b1|=max{(a1-b1
mlzmlz95
·
2020-08-18 00:27
bzoj题解
线段树
POJ - 1177 Picture (
线段树
+ 扫描线)
POJ-1177题目题意:给一堆矩形,求这些矩形的周长#include#include#include#include#includeusingnamespacestd;#definemet(a,b)memset(a,b,sizeof(a))constintmaxn=5010;structnode{intx,v,y1,y2;node(){}node(inta,intb,intc,intd){x=a
shinimashzi
·
2020-08-17 23:26
数据结构
POJ - Picture(
线段树
&扫描线)
题目链接http://poj.org/problem?id=1177TimeLimit:2000MSMemoryLimit:10000KDescriptionAnumberofrectangularposters,photographsandotherpicturesofthesameshapearepastedonawall.Theirsidesareallverticalorhorizonta
ityanger
·
2020-08-17 23:54
ACM题解
#
线段树
#
数据结构
bzoj1095 Hide 捉迷藏 括号序列&
线段树
实际上核心思想是,利用括号序列将两点间距离转化为了该两点间的括号序列化简以后的长度,这样就可以用
线段树
来维护区间最大子段和(并不是指通常的最大子段和)了。AC代码如下(略微一压到70行还算短吧。。)
lych_cys
·
2020-08-17 23:44
bzoj
GCD 2010(
线段树
)
题意:求n个点的最大公约数,有两种操作,增加一个数,删去一个数,删去的数肯定是已经存在的离线处理,先要离散化然后找到每个数相应的位置插入或删除,简单的单点更新gcd(a,b,c,d)=gcd(gcd(a,b),gcd(c,d));#include#include#include#includeusingnamespacestd;#definelsonl,m,rt>1;if(pval;memset(
Rest
·
2020-08-17 23:29
线段树
Ural
刷题之旅
hdu5875(取模的性质,
线段树
,二分)
然后我们用较为暴力的方法,二分加
线段树
,过去了。(我写的T了,好像常数太大,队友的过了,学习了一发姿势,二分嵌在
线段树
里写)。还要注意是两个端点都相等的时候进行操作,不是包含,
luotuoqingshan
·
2020-08-17 23:29
杂题
ural 1019 Line Painting (
线段树
)
#include#include#includeusingnamespacestd;#defineMAX1000000000#defineN10010#defineM5010#definelch(i)((i)b?a:bstructpoint{intm,f,n;}p[N];structsegment{intl,r,v;}s[M];structtree{intl,r,cnt;intmid(){retu
Rest
·
2020-08-17 23:28
Ural
线段树
ural 1090. In the Army Now
树状数组
的wiki页面:http://zh.wikipedia.org/wiki/%E6%A0%91%E7%8A%B6%E6%95%B0%E7%BB%84题意:给出士兵的身高站位求逆序数,本题中是求某人前面比他矮的人的个数和
Rest
·
2020-08-17 23:28
Ural
刷题之旅
树状数组
bzoj1095
线段树
括号序列
题目分析首先%%%岛姐的讲解然后%%%hzwer的代码最后%%%树王的帮助好吧,写写我的感悟。括号序列与距离首先我们对于一棵美丽的树,可以生成一个先序遍历的括号序列,左括号表示到达该店,右括号表示离开该点。例如下图这棵美丽的树,可以生成一个这样的序列:(1(2(3)(5))(4)(6(7)))这个序列有什么用呢?两个点之间的距离,就是它们之间括号序列去掉可以匹配的括号后的括号数。这是为什么呢?是因
litble
·
2020-08-17 23:36
数据结构
Codeforces Round #365 (Div. 2) D
线段树
+离线 (区间内的数有哪些
链接:戳这里D.MishkaandInterestingsumtimelimitpertest3.5secondsmemorylimitpertest256megabytesinputstandardinputoutputstandardoutputLittleMishkaenjoysprogramming.Sinceherbirthdayhasjustpassed,herfriendsdecid
CrossDolphin
·
2020-08-17 23:14
线段树
AtCoder - 2581 Meaningful Mean
树状数组
+离散化。
YouaregivenanintegersequenceoflengthN,a={a1,a2,…,aN},andanintegerK.ahasN(N+1)⁄2non-emptycontiguoussubsequences,{al,al+1,…,ar}(1≤l≤r≤N).Amongthem,howmanyhaveanarithmeticmeanthatisgreaterthanorequaltoK?
Top_xiao
·
2020-08-17 23:54
#
线段树
树状数组
各种注意点
*%mod时候注意哪些要%*使用continue前要把更改过的数据复原*使用longlong输出要%lld*
树状数组
注意累加的终点*注意>*mod的时候要注意数据大小,及时mod防溢出*字典序——想到优先队列
kaqiur
·
2020-08-17 23:17
细节
Snowy Smile(
线段树
维护最大字段 最大子矩阵)
原题:http://acm.hdu.edu.cn/showproblem.php?pid=6638题意:给出[−1e9,1e9][-1e9,1e9][−1e9,1e9]上的2e32e32e3个点,求最大子矩阵。解析:一般的O(N3)O(N^3)O(N3)的做法不能做了,考虑这个题的特点,虽然离散化后有2e32e32e3种横坐标,2e32e32e3种纵坐标,如果做4e64e64e6个点的方法一定是不
JK Chen
·
2020-08-17 23:22
数据结构
POJ - 1177 Picture
POJ-1177Picture
线段树
扫描线求矩形周长并#include#include#include#include#include#include#include#include#include#include
Insist111
·
2020-08-17 22:55
扫描线
NOIP2018咕咕记
:我来更博啦(≧▽≦)/StoryDay0写了些板子,很早就睡了.Day1早上有点晕车,进考场时有点迷糊.先开T1,发现是NOIP2013原题,但是上次做这题还是两年前,早就忘了.然后搞出了一个二分套
树状数组
的做法
Hany01
·
2020-08-17 22:24
总结
【CF438D】 The Child and Sequence(
线段树
取模)
Description给定一个长度为n的序列,支持区间取模、单点更新、区间求和三个操作Solution单点更新,区间求和显然可以用
线段树
直接肝,关键在于区间取模。
Hany01
·
2020-08-17 22:23
Codeforces
线段树
(
线段树
)求区间最大连续子段和
www.acwing.com/problem/content/246/题解:某大佬的区间子段和的解释:https://blog.csdn.net/wu_tongtong/article/details/73385029
线段树
需要维护的是
只有魔法才能对抗魔法
·
2020-08-17 22:27
线段树
bzoj3956 -- 单调栈 +
线段树
对于区间[l,r],求出它的最大值的位置。显然不可能有点对跨越最大值。那么用单调栈预处理出每个点作为左端点、右端点的点对个数,求一个前缀和就可以了。注意相等的情况。代码:#include#include#include#includeusingnamespacestd;#defineN300010inti,j,k,n,m,s[N],Top,a[N],x,y,c[N>1;Build(xa[c[xR|
gjghfd
·
2020-08-17 22:56
单调栈
线段树
[BZOJ1095][ZJOI2007][
线段树
]Hide捉迷藏
[ProblemDescription]捉迷藏Jiajia和Wind是一对恩爱的夫妻,并且他们有很多孩子。某天,Jiajia、Wind和孩子们决定在家里玩捉迷藏游戏。他们的家很大且构造很奇特,由N个屋子和N-1条双向走廊组成,这N-1条走廊的分布使得任意两个屋子都互相可达。游戏是这样进行的,孩子们负责躲藏,Jiajia负责找,而Wind负责操纵这N个屋子的灯。在起初的时候,所有的灯都没有被打开。每
gaotianyu1350
·
2020-08-17 22:14
题解
RMQ(区间最值查询问题)
关于RMQ问题,还是有很多方法来求解的(像
线段树
啊什么的),本篇博客主要介绍一下ST算法要注意的是,ST算法只适用于静态区间求最值,如果是动态的,那还是乖乖打
线段树
吧【
forever_dreams
·
2020-08-17 22:22
#
知识点
RMQ的两种实现方法
引言
线段树
实现RMQ主要思路代码实现时间复杂度ST表实现RMQ主要思路代码实现时间复杂度引言RMQ算法(RangeMinimum/MaximumQuery)是求区间极值的高效算法,依据所需实现的不同性能可以有多种写法
fanyiningHH
·
2020-08-17 22:28
算法心得
spoj Query on a tree V(链分治)
思路:考虑链分治维护答案,每个链顶用一个堆来维护答案,然后对于每条重链开一棵
线段树
维护子树里所有白点到
线段树
最左/右端点的最短距离。然后瞎更新查询即可。
SC.ldxcaicai
·
2020-08-17 22:28
#
树链剖分
#
线段树
数据结构与分治算法
Luogu 2590 [ZJOI2008]树的统计 / HYSBZ 1036 [ZJOI2008]树的统计Count (树链剖分,LCA,
线段树
)...
Luogu2590[ZJOI2008]树的统计/HYSBZ1036[ZJOI2008]树的统计Count(树链剖分,LCA,
线段树
)Description一棵树上有n个节点,编号分别为1到n,每个节点都有一个权值
dipinzhu4111
·
2020-08-17 22:42
php
Luogu 2680 NOIP 2015 运输计划(树链剖分,LCA,
树状数组
,树的重心,二分,差分)...
Luogu2680NOIP2015运输计划(树链剖分,LCA,
树状数组
,树的重心,二分,差分)DescriptionL国有n个星球,还有n-1条双向航道,每条航道建立在两个星球之间,这n-1条航道连通了
dipinzhu4111
·
2020-08-17 22:42
ui
【
线段树
区间减为平方 + 区间求和】
Canyouanswerthesequeries?TimeLimit:4000/2000MS(Java/Others)MemoryLimit:65768/65768K(Java/Others)TotalSubmission(s):10892AcceptedSubmission(s):2535ProblemDescriptionAlotofbattleshipsofevilarearrangedin
笑着走完自己的路
·
2020-08-17 21:34
线段树
线段树
的知识
起源
树状数组
英文名称是BinaryIndexedTrees,最早由PeterM.Fenwick于1994年MARCH以ANewDataStructureforCumulativeFrequencyTables
nextcy
·
2020-08-17 21:12
线段树
Codeforces 873D:构造题
题解:归并排序类似
线段树
的结构,当K是偶数必然是无解的,那么我们先
calabash_boy
·
2020-08-17 21:52
Codeforces
ACM模板(个人代码集整理)(博客停止更新,内附github链接,会在github继续更新)
(*)PAM(*)树链剖分(*)01Trie(*)ACAM(*)KMP(*)LCA(*)主席树(*)点分治(*)kd-Tree(*)斜率优化DP最大流Dicnic(*)最小费用最大流(SPFA)(*)
线段树
calabash_boy
·
2020-08-17 21:52
ACM之坑&套路
#1:一些写法的
线段树
需要开四倍空间。大概是因为:在很靠近叶子的地方,他的编号就很接近2倍了。然后他的孩子(超生)就接近4倍了。例如:Codeforces833B#2:统计答案的
calabash_boy
·
2020-08-17 21:52
codeforces 487E Tourists : 圆方树+链剖+
线段树
+可删除堆
题意:给出一个无向联通图,每个点有一个权值,要求兹磁一种修改操作:修改某点权值;以及一种查询操作:查询某两点x,y的所有简单路径上的最小点权。题解:这东西是必然要缩点的啦,那么问题来了,缩点有三种写法:强连通,点双,边双。显然要点双啦,题目都说了要简单路径的。那么点双一缩,变成一棵树,然后考虑树上两点,他们的简单路径并={树上路径+路径上的点双里面的所有的点}。我们仿照圆方树操作:将每个点双建立一
calabash_boy
·
2020-08-17 21:52
Codeforces
仙人掌
询问某区间内有多少满足某个要求的/某区间以某式子计算出的值(莫队算法,不修改只询问区间)
我觉得能用
线段树
就用
线段树
吧,实在用不了了再来考虑莫队算法,比如下面两道题:http://codeforces.com/contest/617/problem/E(询问某区间内有多少个子区间的异或值是K
ccyy-
·
2020-08-17 21:49
困难
线段树&网络流&后缀数组etc
[kuangbin带你飞]专题七
线段树
N - Picture POJ - 1177 扫描线求周长
求周长其实和面积差不多POJ1177Picture(
线段树
+离散化+扫描线)详解这篇博客讲的不错通常有2中方法。
夕林山寸
·
2020-08-17 21:29
Sqrt tree 学习笔记
博客园同步前置知识你首先要学会的:RMQ(ST表)\text{RMQ}(ST\text{表})RMQ(ST表)分块
线段树
二进制,位运算前记我们把RMQ\text{RMQ}RMQ和分块所解决的问题搬出来:
bifanwen
·
2020-08-17 21:54
Sqrt
tree
RMQ算法分析-区间最最值查询
这个问题也可以用
线段树
解决。问题描述:给出n个数ary[i],快速求出某一区间的最值。算法思想:DP+位运算算法分析,状态:dp[i][j]表示第i为开始,到(i+2^j-1)位的最大/小值。
wjsay
·
2020-08-17 21:35
数据结构
[SCOI2007]降雨量
线段树
和区间最值(RMQ)问题
题目链接P2471[SCOI2007]降雨量听说博客观看效果更佳 这道题是比较经典的RMQRMQRMQ问题,找到X和Y年间的最值来进行判断真假,用
线段树
维护是比较简单好写的。
ailanxier
·
2020-08-17 21:30
线段树
线段树
求树的直径
线段树
求直径可以求任意子树(包括连子树都不算的分散节点集合)的直径,适用范围广。
aigu1964
·
2020-08-17 21:58
树链剖分模板+入门题 SPOJ - QTREE
比如说下面这道题,就是将树分为重链和轻链然后映射到
线段树
上
acm_lkl
·
2020-08-17 21:47
数据结构
线段树
:区间修改,区间求和
#include#definelllonglongusingnamespacestd;constintM=400001;intn,m,k,x,y,val;lla[M],sum[M],lazy[M];voidpushup(intindex){sum[index]=sum[index>1;build(index>1;lazy[ls]+=lazy[index];sum[ls]+=(mid-l+1)*la
accedhy
·
2020-08-17 21:16
c++算法
树状数组
(区间更新,单点查询)
#includeusingnamespacestd;constintM=500005;inta[M],c[M],c1[M];intn,m;intlowbit(intt){returnt&(-t);}voidupdate(intl,intr,intval){//区间更新只相当于更新c[l]+=val,c[r+1]-=val;下面为更新所有和c数组有关的c1数组for(inti=l;i0;i-=low
accedhy
·
2020-08-17 21:15
c++算法
BZOJ 1835 [ZJOI2010]base 基站选址:
线段树
优化dp
传送门题意有$n$个村庄在一排直线上,现在要建造不超过$K$个通讯基站,基站只能造在村庄处。第$i$个村庄距离第$1$个村庄的距离为$D_i$。在此建造基站的费用为$C_i$。如果在此不超过$S_i$的范围内有基站,那么这个村庄就被覆盖了。如果它没有被覆盖,则需要花费$W_i$的补偿费用。问你最小总花费是多少。题解首先有一个很显然的dp:$dp[i][j]$表示在第$i$个村庄建了基站,此时一共建
a1392136
·
2020-08-17 21:15
BZOJ 3196 Tyvj 1730 二逼平衡树:
线段树
套splay
]$内排名为$k$的值将$a[p]$修改为$k$查询$k$在区间$[l,r]$内的前驱(前驱定义为小于$k$,且最大的数)查询$k$在区间$[l,r]$内的后继(后继定义为大于$k$,且最小的数)题解
线段树
套
a1392136
·
2020-08-17 21:15
git
数据结构与算法
树状数组
求逆序对
树状数组
求逆序对
树状数组
可以进行PointUpdateIntervalQuery点更新,段求和的操作。同时也可以进行求逆序对。
SuperBvs
·
2020-08-17 20:18
模板
上一页
63
64
65
66
67
68
69
70
下一页
按字母分类:
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
其他