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
ACM算法_线段树
Dijkstra算法的
线段树
优化
目录Dijkstra算法算法简介实现方法利用
线段树
的优化时间复杂度Dijkstra算法算法简介Dijkstra算法是由荷兰计算机科学家Dijkstra于1959年提出的,因此又叫Dijkstra算法。
十甫Com
·
2020-08-21 02:50
最短路问题
Dijkstra
线段树
【NOIP2012 提高组 day2】借教室
题目题解–首先,这道题用
线段树
是可以过得,luogu上最慢的点也才700ms,具体就不说了主要讲更快的二分加差分的方法–首先,差分是一种对区间修改的优化,可以把时间复杂度降到只跑一遍重点是二分,因为对于某个点
Stupid_Computer
·
2020-08-21 01:15
差分
二分
线段树
2019牛客暑期多校训练营(第八场)Flower Dance
**题解:**1.DFS
线段树
+离散化+并查集这个
线段树
,其实也不能算是个正常的
线段树
,他build的之后就没啥用了,没有更新和查询.。。
EW_DUST
·
2020-08-21 01:59
-----数据结构-----
(
线段树
+暴力)
分析:一开始还不敢用
线段树
做,因为纯
线段树
下来根暴力枚举复杂度差不了多少,但由于开方,所以在很少次的循环里就能达到1,所以就可以直接这么做了。但题目没有说名忍耐值的范围,要是0太多这个方法也不好使。
Combatting
·
2020-08-21 01:26
数据结构
【LOJ3325】「SNOI2020」区间和
参考最大子段和的传统
线段树
解法,同样考虑维护左LLL、中MMM、右RRR、和SSS四项数据。
cz_xuyixuan
·
2020-08-21 01:15
【OJ】LOJ
NOI2018湖北省队集训Day4 T1 djq和MZ
正解:其实O(nn−−√logn)O(nnlogn)的做法还挺好想的(然而我在考场上并没有想出来),分块莫队再用
线段树
维护块中类型的最大值即可。我们要想办法把这个lognlogn去掉。
CleverLarry
·
2020-08-21 01:40
NOI2018湖北省队集训
【NCPC2017-2018-gym101572-A.Airport Coffee 】
线段树
+分类讨论DP
AirportCoffee题目链接:https://codeforces.com/gym/101572/problem/ADescriptionInputOutputSampleInput100000100138603005500020000500005500075000SampleOutput203题意从000这个位置出发走到lll这个位置,速度为aaa,路上有nnn个咖啡店,可以选择在某个咖啡
lajiyuan_
·
2020-08-21 01:26
Codeforces
DP
线段树
(
线段树
)
HDU-4027Canyouanswerthesequeries?题意:给你n个数字,q个操作。每次操作输入x,l,r。x=0,代表把al到ar的值全部都开根号。x=1,代表求al到ar的和。数据范围:1#include#include#include#include#include#definelsonl,m,rt>1;if(Lm)update(L,R,rson);PushDown(rt);}l
子灬丶逾
·
2020-08-21 01:57
bzoj 5384: 有趣的字符串题
题解挺好玩的题先说一个暴力的做法,就是建立PAM然后离线,rrr端点一个一个加,维护l的答案然后每一次,就暴力找到以rrr结尾的所有回文串,再找到上一次出现的位置,这个可以在PAM的fail树上用
线段树
维护
OI界第一麻瓜
·
2020-08-21 01:51
高二生活
ZKW
线段树
区间加区间取最值
树状数组的区间加区间求和是利用差分和一次前缀和来完成的,但是写在
线段树
上就不用差分了。
Freopen
·
2020-08-21 01:02
线段树
【BZOJ2288】[POJ Challenge]生日礼物(
线段树
)
线段树
实现即可。注意这里要求至
changle_cyx
·
2020-08-21 01:01
数据结构
——
线段树
线性基(带删除)
真的难找分离线和在线,离线很好写,也很快(一个logloglog,要是两个logloglog还不如写
线段树
分治。)在线。。。
Freopen
·
2020-08-21 01:30
线性代数
hdu5592
我的思路一样,不过使用vector实现的,第一次查找了一遍超时,想了一下原来不用,直接找就行,最后险过,听说
线段树
特别快。
天宇skyblue
·
2020-08-21 01:00
简单思维
线段树&树状数组
登峰造极之树——Splay伸展树
这个splay也是个很有趣的数据结构,它是为了平衡权值二叉树而提出的,却最终不是以权值二叉平衡树的形式被广泛使用,而是去维护序列的区间修改(某些
线段树
实现不了的区间修改,如区间翻转等),很多萌新在初学splay
I_AM_HelloWord
·
2020-08-21 00:56
常用算法讲解
线段树
分治概述
然而这个算法不一样的是:一个操作可能会覆盖
线段树
的多个节点,如果一个操作横跨当前两个节点我们可能需要把它拆成两个操作。当然对于
线段树
熟悉的话,这并不是问题,一个操作最多被分成loglog个。
lvmaooi
·
2020-08-21 00:39
数据结构
poj 3264 RMQ问题 ST算法
解决此问题的算法有三种1、最简单的方法就是O(n)了2、
线段树
3、ST(SparseTable)算法其中ST算法为解此问题的最佳方法预处理时间复杂度O(nlogn),查询时间复杂度O(1)ST算法描述如下
lv1120101875
·
2020-08-21 00:07
算法
POJ
算法
RMQ
STT
[BZOJ4025] 二分图(
线段树
分治+可撤销并查集)
感谢Inspector_Javert的这篇博客,让我看懂了什么是
线段树
分治。首先我们要知道如何判定一个图是不是二分图,那就是这个图不存在奇环。然后我们可以以时间为轴建立
线段树
,把每条边放到
线段树
lunch__
·
2020-08-21 00:31
线段树分治
并查集
HDU 4417 Super Mario (可持久化
线段树
)
题意:马里奥顶砖块游戏一条长为n的路有n个砖块给你n个砖块的高度现有m个询问每个询问为l,r,h表示在【l,r】这段路上最高能跳h高时能顶多少个砖块思路:可持久化
线段树
模板题以每个高度建
线段树
(要离散化
lkaiii
·
2020-08-21 00:40
数据结构
NOI 2017 整数
好玄学的
线段树
啊...调了半天的题,最后发现是传参的数据类型传错了(longlong传成了int),结果RE3小时...说下思路吧...其实主题思想很简单,就是把一个二进制数作为一个序列建立一棵
线段树
,
lleozhang
·
2020-08-21 00:09
线段树
数据结构
高精度
压位
2761 Feed the dogs 求任一区间的第k小数
线段树
+划分树
FeedthedogsTimeLimit:6000MSMemoryLimit:65536KTotalSubmissions:8160Accepted:2218DescriptionWindlovesprettydogsverymuch,andshehasnpetdogs.SoJiajiahastofeedthedogseverydayforWind.JiajialovesWind,butnotth
kongming_acm
·
2020-08-21 00:52
acm_数据结构
P5324 [BJOI2019]删数 (
线段树
求区间 0 的个数)
题目描述对于任意一个数列,如果能在有限次进行下列删数操作后将其删为空数列,则称这个数列可以删空。一次删数操作定义如下:记当前数列长度为kk,则删掉数列中所有等于kk的数。现有一个长度为nn的数列aa,有mm次修改操作,第ii次修改后你要回答:经过ii次修改后的数列aa,至少还需要修改几个数才可删空?每次修改操作为单点修改或数列整体加一或数列整体减一。输入输出格式输入格式:第一行两个正整数n,mn,
Top_xiao
·
2020-08-21 00:14
#
线段树
树状数组
线段树
thuwc2017滚粗记
不如码个
线段树
拿拿55分?第二题感觉是个很高明的计数题啊?后来果然是陈老师的题啊?只会暴力40只好滚了啊?第三题又来提答题啊?
jr_mz
·
2020-08-21 00:53
【NOI2019模拟2019.3.7】总结
T2数学题乱搞,感觉不大擅长T3简单
线段树
合并随便讨论一下先去弄T1暴力很好写,一开始天真的以为3n3^n3n暴力加点优化可以跑过去,测了一下发现极限要跑8s琢磨琢磨感觉可以FWT,然后想到是类似卷积的形式转移
BAJim_H
·
2020-08-21 00:10
总结
总结
【国家集训队】middle
则考虑对于[b+1,c-1]直接求出来,对于[a,b]求最大的小的减大的后缀,[c,d]求最大前缀,可以建
线段树
维护。对于每一个数建一个
线段树
,则空间爆了,考虑使用主席树维护那么对于第
hychxb
·
2020-08-21 00:38
题解
ZOJ 3299
线段树
////开结构体去存储
线段树
中节点的信息MLE了。。////按木板的高度,从低到高,去更新
线段树
节点对应的木板的编号。////板砖落下时,将对应区间的覆盖次数加一。////最后查询的时
hiding_nya
·
2020-08-20 23:43
数据结构
zkw
线段树
两题
普通的
线段树
也能写,只是练习一下zkw
线段树
。
_hxh
·
2020-08-20 23:11
ACM
NOIP2012 借教室 (
线段树
)
DescriptionSolution考虑用
线段树
维护,每借一段时间的教师便在
线段树
中减去对应的值,不理解为什么网上这么多二分的。。
Hany01
·
2020-08-20 23:10
NOIP
线段树
二分
树状数组
HDU 1754
线段树
-I Hate It
题解:本题使用
线段树
做,目标是求最大值,因为每次操作知识修改其中一项的值,所以也可以用树状数组做,我用的是
线段树
。
geekword
·
2020-08-20 23:24
线段树
线段树
HDU-1166
线段树
-敌兵布阵
DescriptionC国的死对头A国这段时间正在进行军事演习,所以C国间谍头子Derek和他手下Tidy又开始忙乎了。A国在海岸线沿直线布置了N个工兵营地,Derek和Tidy的任务就是要监视这些工兵营地的活动情况。由于采取了某种先进的监测手段,所以每个工兵营地的人数C国都掌握的一清二楚,每个工兵营地的人数都有可能发生变动,可能增加或减少若干人手,但这些都逃不过C国的监视。中央情报局要研究敌人究
geekword
·
2020-08-20 23:24
线段树
线段树
POJ-2892-Tunnel Warfare(
线段树
)
DescriptionDuringtheWarofResistanceAgainstJapan,tunnelwarfarewascarriedoutextensivelyinthevastareasofnorthChinaPlain.Generallyspeaking,villagesconnectedbytunnelslayinaline.Exceptthetwoattheends,everyv
faithdmc
·
2020-08-20 23:16
线段树&树状数组
hdu5592(权值
线段树
)
思路:从最后一个值开始考虑,rev[i]-rev[i-1]表示前面比它大的数的个数,我们就可以得出当前位置的数字在1-n中的次序,然后进行权值
线段树
的操作~~~ac代码#include#include#
dizhang6486
·
2020-08-20 23:53
2019hdu多校3 hdu4893(
线段树
单点 区间更新
补这题主要是因为第三个操作要维护区间,而不是点,否则会T。https://vjudge.net/problem/HDU-4893题意:输入n、q。表示有n个数,初始化默认这n个数都为零,有q次操作,操作种类分为三种:1、输入k,d,使得k位置的数加上d。2、输入l,r,求区间[l,r]的和并输出。3、输入l,r,把区间[l,r]内的数都改成斐波拉契数,修改方式为使得fabs[x-F[i]]最小,如
ddb21246
·
2020-08-20 23:01
codeforces 1100F
题解:普通的
线段树
会超时,我们考虑对每位有贡献的数最远是哪里,然后记录下来更新即可。
black_miracle
·
2020-08-20 23:48
线性基
线段树
模板
单纯的模板区间求和区间最值区间加法点加法通过区间求和或区间最值可以求点值#includeusingnamespacestd;typedeflonglongll;lla[100010];structT{lllt,rt;llsum,mx,mn,lazy;}tr[400010];voidpushup(llroot){//向下传递lls1=root>1;ct(g>1;if(pos>1;if(ymid)re
diefun
·
2020-08-20 23:29
线段树
【洛谷4770】 [NOI2018]你的名字(SAM,
线段树
合并)
考虑
线段树
合并,我们关心的其实只有父亲关系和len对吧。那么维护一下区域有多少个值,然后每一次查询符不符合要求就好了。代码
araw94333
·
2020-08-20 22:44
NOI2019网上同步赛记
忘记注册账号.jpg那就只能借同学的题目打了DAY1我醒了,11:00了,有什么好说的整场比赛浑浑噩噩D10+0+0=0(DAY2总算起来了先看T1裸的二维
线段树
优化最短路。。。
精细_精甚_细腻
·
2020-08-20 22:00
总结
线段树
题解:由于开根号使得数值很快变为1,而1的时候开根号还是1可以跳过操作;所以我们用
线段树
维护区间的时候,碰到一段区间的和与这段区间长度相等时可以跳过以节约时间。
knownothing
·
2020-08-20 22:23
线段树
【Codeforces】2015-2016 ACM-ICPC Nordic Collegiate Programming Contest (NCPC 2015) E
线段树
+离散化
题目链接:https://vjudge.net/contest/175173#problem/E题目大意:给你n个区间段l[i],r[i]0#include#include#include#include#includeusingnamespacestd;constintMaxN=3e5;constintINF=1f;structNODE{intl,r;}box[MaxN+5];boolcmp(N
ZZZZone
·
2020-08-20 22:38
CodeForces
线段树
离散化
CSP-S 2019 游记
2个月集训前一个月复习了各种算法(各种各样
线段树
、分块、KMP还有一些杂七杂八的)。后一个月不停的打比赛,学习了可持久化
线段树
、扫描线和简单博弈论。
YangHao5
·
2020-08-20 22:02
杂论
【NOI2012】感想
没考好的原因,也许是心态不对,也许是考前发烧,还也许是出于对二维
线段树
的恐惧。一切都已经过去,需要突然回到以前的状态,没有作业的日子再不会有了,迎接我的是一大堆作业和考试。
Whjpji
·
2020-08-20 22:24
OI
Summary
HDU 4027 Can you answer these queries
线段树
题意:在一场战役中,敌方有一排编号为1至n的战舰。你的指挥官有两种命令:1.下令使用秘密武器攻击敌方战舰,每次攻击使得敌方一定范围的所有战舰的耐久度降低至原来的平方根(若平方根不为整数,那么舍去后面的小数部分)。2.询问敌方一定范围内的所有战舰的耐久度之和。题解:网赛卡在这道题上了。泪流满面呀。稍不注意就TL,超时的代码也贴出来,吸取教训···。640ms,把down函数内联可以到500几吧。#i
ConwayTian
·
2020-08-20 22:41
线段树
【NOIP2015】运输计划 差分数组+
线段树
+树链剖分
最开始考NOIP的时候看到这个题目写了个SPFA,写搓了一分都没有,后来学了不少新姿势以后重新想起了这个题目据说倍增可以水60分,额,想了一想不知道怎么弄,于是我就开始写可以A的算法了,别人告诉我这个题目会被卡常数,有点慌好吧后来除了二分边界错了并没有被卡常数,可能是因为我最开始就注意压缩常数了吧。BZOJ:http://www.lydsy.com/JudgeOnline/problem.php?
WeZiH
·
2020-08-20 22:04
树链剖分
线段树
noip
zoj1610 Count the Colors
线段树
思路分析:我们用
线段树
保存各点的颜色,区间更新,最后query一下就好。注意题目给的是线段的起点和终点,是连续的。如果想用离散的表示的话,就让起点+1,代表一段。
Joel__Li
·
2020-08-20 22:16
线段树
jzoj6191-[NOI2019模拟2019.5.31]Exchange【
线段树
】
正题题目大意一个序列,给定若干个区间[l..r][l..r][l..r]从l∼rl\simrl∼r任意一个位置出发,见到比手中大的数字就交换,到rrr求最小的交换次数(注意,并不是真的交换)解题思路首先算出每个点的后继(在它后面第一个比他大的数)nextinext_inexti,然后由nextinext_inexti连接像iii的化就会变成一个森林。我们可以发现两个性质任意一个子树中的序号都是连续
ssl_wyc
·
2020-08-20 22:44
数据结构
hdu 5862 Counting Intersections 坐标离散化+树状数组
支持单点修改,区间求和,
线段树
树状数组都可以高效求解。#include#include#include#inc
varinic
·
2020-08-20 22:44
树状数组
bzoj5017 [Snoi2017]炸弹(tarjan缩点+拓扑序dp+线段合并+
线段树
优化建图)
首先我们可以发现每个点能引爆的炸弹是一个连续的区间。相邻的点能引爆的区间肯定不会相离。每个点向他能引爆的点连边,建出一张有向图,Tarjan缩点(一个scc内的点都可以互达,合并他们能到达的区间即可),然后拓扑序倒序dp即可。转移相当于线段合并。每个点记录他最后能引爆的区间,答案就是区间大小。可是我们最坏情况有O(n2)条边,无论是时间上还是空间上都是无法接受的。还好我们每个点能连向的点是一个连续
Icefox_zhx
·
2020-08-20 22:56
bzoj
线段树
tarjan
拓扑排序
【NOI2016】区间(
线段树
+离散化)
那么维护两个指针l和r,用
线段树
对区间作区间覆盖,用尺取法求解。#include#definefer(i,j,n)for(in
Flanoc
·
2020-08-20 22:01
杂题
hdu1540 poj2892 Tunnel Warfare
线段树
端点更新 SBT
题目大意,给n个点表示n个村庄,一开始都是相连的,现在有3种操作:Qx,查询第与第x个村庄相连的村庄个数;Dx,摧毁掉第x个村庄;R恢复刚摧毁的村庄。题目分析:每个点用2个状态表示,0表示被摧毁,1表示存在,因为有恢复操作,并且每次恢复上一个被摧毁的村庄,所以用一个栈存储所有被摧毁的村庄,每次R操作恢复栈顶村庄。这题关键是查询操作,如果查询的村庄x不存在,则没有村庄与之相连通,如果存在x村庄,那么
WJSZMRX
·
2020-08-20 22:24
SBT
线段树
poj
hdu
NOI2016 区间
线段树
+离散化
传送门好久没水
线段树
题了。。。NOI2016的签到题,差不多就是个裸的
线段树
。离散化,建树,维护最大值。
asdf1229
·
2020-08-20 22:50
线段树
贪心
离散化
可持久化数组(知识整理+板子总结)
概念可持久化数组,基于可持久化
线段树
即主席树主席树是在叶子节点存入了值出现的次数,可持久化数组就是把叶子结点改成了对应数组中位置的值主席树可以开局不建root[0](默认root[0]=0,root[0
Code92007
·
2020-08-20 22:39
知识点总结
上一页
35
36
37
38
39
40
41
42
下一页
按字母分类:
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
其他