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
-----线段树
「JOISC 2019 Day3」穿越时空 Bitaro-
线段树
Description在河狸国,一条路上有NNN座城市,依次编为1…N1\ldotsN1…N号;连接城市iii和城市i+1i+1i+1的那段路被称为iii号路。在河狸国,一天有10910^9109秒,依次称为时刻0…109−10\ldots10^9-10…109−1。从城市iii沿路到达与之相邻的城市——城市i−1i-1i−1或城市i+1i+1i+1需要111个单位时间。iii号路每天在时刻LiL
DSL_HN_2002
·
2020-08-09 06:24
数据结构——线段树
codeforces 271E 离散化+
线段树
,dp优化
E.Pillarstimelimitpertest1secondmemorylimitpertest256megabytesinputstandardinputoutputstandardoutputMarmotfoundarowwithnpillars.Thei-thpillarhastheheightofhimeters.Startingfromonepillari1,Marmotwantst
t_xliang
·
2020-08-09 05:56
dp
线段树
HDU 5638 Toposort
线段树
+贪心
题意:bcround74分析:参考下普通的用堆维护求字典序最小拓扑序,用某种数据结构维护入度小于等于k的所有点,每次找出编号最小的,并相应的减少k即可.这个数据结构可以用
线段树
,建立一个
线段树
每个节点[
weixin_30485379
·
2020-08-09 05:28
CodeForces 474F Ant colony(
线段树
)
pushup函数写成lson.mins#include#include#include#include#includeusingnamespacestd;constintmaxn=100010;ints[maxn];intn,t;templatecharscanf(T*x){(*x)=0;charch=getchar();while(ch'9'){ch=getchar();if(ch==EOF)r
BellWind1995
·
2020-08-09 05:46
ACM
—
数据结构
Codeforces Round #271 (Div. 2)(dp,
线段树
good)(很好的一场cf)
很好的一场cfD.FlowersWesawthelittlegameMarmotmadeforMole'slunch.Nowit'sMarmot'sdinnertimeand,asweallknow,Marmoteatsflowers.Ateverydinnerheeatssomeredandwhiteflowers.Thereforeadinnercanberepresentedasaseque
u010660276
·
2020-08-09 05:32
树状数组/线段树
动态规划
常用技巧
hdu5638 秘之贪心
当然还有
线段树
的,也是一样的#includ
mymilkbottles
·
2020-08-09 05:41
ACM_秘之贪心
2020HDU多校第六场--A Very Easy Graph Problem(最小生成树+DFS序 建立
线段树
or 树状数组)
题意:给出一个连通图,对于任意两个标记不同(0或1)的点,找出它们之间的最短路径,然后求和暴力floyd???大体思路是求一个最小生成树用到了那些边,同时任意选取一个点进行DFSDFSDFS序,记录下每个点的ininin数组和outoutout数组,最后遍历用到的每条边,求出他左右0点和1点的个数,对每条边的贡献进行累加求和-------------------------------我用的树状数
十点就睡
·
2020-08-09 05:51
多校
Codeforces Round #271 (Div. 2) F题 Ant colony(
线段树
求区间gcd)
F.Antcolonytimelimitpertest1secondmemorylimitpertest256megabytesinputstandardinputoutputstandardoutputMoleishungryagain.Hefoundoneantcolony,consistingofnants,orderedinarow.Eachanti(1 ≤ i ≤ n)hasastren
kalilili
·
2020-08-09 05:16
线段树
二分思想
Ant colony -
线段树
、数学
2.解题思路因为是查询区间的gcd,可以考虑用
线段树
O(logN)解决,求任何区间内某个数的个数可以先用
寒江雪里独钓着的蓑笠翁
·
2020-08-09 04:18
Codeforces
数学
线段树及其应用
codeforces
acm
Codeforces Round #271 (Div. 2) F.Ant colony(
线段树
+ 统计区间内某数的个数)
F.AntcolonyMoleishungryagain.Hefoundoneantcolony,consistingofnants,orderedinarow.Eachanti(1 ≤ i ≤ n)hasastrengthsi.Inordertomakehisdinnermoreinteresting,Moleorganizesaversionof«HungerGames»fortheants.
dexicuo5991
·
2020-08-09 04:45
Ant colony(
线段树
+数论)
题目分析:我们可以知道,每个区间的数最多只有一种数字满足条件,也就是所有数的gcd,那么我们利用
线段树
,维护某一个区间的gcd,和这个gcd出现的次数即可#include#include#include
c_cl
·
2020-08-09 04:02
思维
CF474F Ant colony
线段树
求GCD我除了我被吓蒙了还能说啥先帮我看一眼这两份gcd有什么区别intgcd(inta,intb){if(a%b==0)returnb;elsereturngcd(b,a%b)}intgcd(inta
AcerMo
·
2020-08-09 04:47
数据结构-线段树
HDU - 5638
然后我们可以用
线段树
维护每个点的入度,然后每次可以取出一个最小的,入度满足小于等于k的点,看是否通过操作使其入队。维护最小字典序的队列,我们换成优先队列即可。注意细节,不要让一个点重复入队。
青烟绕指柔!
·
2020-08-09 04:10
拓扑排序
HDU
贪心
Codeforces 474 F. Ant colony
线段树
求某一段的GCD.....F.Antcolonytimelimitpertest1secondmemorylimitpertest256megabytesinputstandardinputoutputstandardoutputMoleishungryagain.Hefoundoneantcolony
码代码的猿猿的AC之路
·
2020-08-09 04:02
数据结构
想法技巧
数学
luogu P1501 [国家集训队]Tree II
注意:由优先级可知要先乘后加,跟
线段树
差不
zsyz_ZZY
·
2020-08-09 04:54
#
LCT
[bzoj3306]树 dfs序+
线段树
3306:树TimeLimit:10SecMemoryLimit:256MB[Submit][Status][Discuss]Description给定一棵大小为n的有根点权树,支持以下操作:•换根•修改点权•查询子树最小值Input第一行两个整数n,Q,分别表示树的大小和操作数。接下来n行,每行两个整数f,v,第i+1行的两个数表示点i的父亲和点i的权。保证fusingnamespacestd;
Leokery
·
2020-08-09 03:00
dfs序
线段树
bzoj
线段树
的入门-Poj2528(简单
线段树
和简单离散化)
此题目的
线段树
就是一般的
线段树
思路,但是我们会发现他的范围实在是太大,怎么办?-离散化!
ybacm
·
2020-08-09 03:38
算法
CF1117G Recursive Queries (
线段树
+单调栈)
这个题的思路和影魔的是大致上类似的。首先我们会发现,对于题目中的f(l,r)f(l,r)f(l,r)函数,实际上就是求区间内每个值作为最大值的区间,与当前区间的交的长度总和。那么我们不妨用和影魔一样的思路,对于原来的询问拆成两个询问,在l−1l-1l−1的时候减去[l,r][l,r][l,r]的贡献,然后再rrr处再加回来。定义l[i],r[i]l[i],r[i]l[i],r[i]分别表示左边和右
y_immortal
·
2020-08-09 03:32
线段树
单调栈
P3722 [AH2017/HNOI2017]影魔 (单调栈+
线段树
+离线)
这个题的思路还是很巧妙的。srohjqorzsroCreedorz首先,我们来考虑题目中给出的两个条件,由于都是跟最大值有关系,所以我们可能会想到,首先运用单调栈求出来每一个数左边第一个比他大的数的位置和右边第一个比他大的数的位置l[i],r[i]l[i],r[i]l[i],r[i]for(inti=1;i=1&&s[top].val=1;i--){while(top>=1&&s[top].val
y_immortal
·
2020-08-09 03:32
线段树
单调栈
c++
luogu1438无聊的数列(区间加等差数列,求一个数的和)
QAQ一道
线段树
好题题目大意:给定一个有n个数的数列,共m种操作,有两种操作1lrkd1lrkd表示将a[l]a[l]~a[r]a[r]的数加一个以k为首相,d为公差2x2x表示求a[x]a[x]是多少
y_immortal
·
2020-08-09 03:32
线段树
【
线段树
】
线段树
入门之入门
线段树
的入门级总结
线段树
是一种二叉搜索树,与区间树相似,它将一个区间划分成一些单元区间,每个单元区间对应
线段树
中的一个叶结点。
x314542916
·
2020-08-09 02:17
【数据结构】
【数据结构】
线段树
线段树
入门与基础应用
线段树
入门与基础应用引入
线段树
是一种二叉搜索树,与区间树相似,它将一个区间划分成一些单元区间,每个单元区间对应
线段树
中的一个叶结点。
wodlx_
·
2020-08-09 02:07
笔记
数据结构
算法
主席树(区间查询第k小数+单点修改)HDU2665
;学习主席树之前必须掌握
线段树
,主席树是建立在
线段树
的基础上的。【算法】
线段树
可以维护区间和、最值。这里我们用的是维护和,维护谁的和呢?维护原序列中的数
winter2121
·
2020-08-09 02:46
ACM**数据结构**
ACM**算法集锦**
C++剑指offer:高级数据结构之
线段树
入门详解
目录前言理解操作后记前言早在刚学C++编程之际,就已经听说了
线段树
的大名今天的我也已经学会
线段树
了虽然是半懂半懵。不过有趣的是我在学
线段树
时并没有感觉到太困难,可能是我比较擅长树和递归这一块的知识吧。
p__| wYw |__q
·
2020-08-09 02:07
线段树
C++
分治
牛客多校4 A Ancient Distance
线段树
+dfs序
思路源于某巨佬:巨佬博客对于1usingnamespacestd;constintN=2e5+100;vectorg[N],st;inttot,in[N],out[N],n,ans[N],rnk[N];intfa[N][22],dep[N];typedeflonglongll;voidinit(){tot=0;for(inti=1;i>=1;bit++;}returnu;}structsegTre
xtuls
·
2020-08-09 01:10
牛客多校
CF 678F Lena and Queries
线段树
维护凸包+三分
y得到y=-q*x+z显然我们需要使得截距z最大我们需要维护一个凸包然后在通过三分在凸包上找到最大值不过显然我们不能每次询问都去求一个凸包那样复杂度是无法接受的我们可以维护每个点出现的时间然后把它挂在
线段树
上面最后在遍历一遍
线段树
就行了
xtuls
·
2020-08-09 01:38
线段树
三分
计算几何
BZOJ 4530 LCT/
线段树
合并
//BySiriusRen#include#include#includeusingnamespacestd;constintN=200050;intn,q,cnt,dfn[N],last[N],tree[N*16],lson[N*16],rson[N*16];intfirst[N],next[N],v[N],w[N],tot,root[N],fa[N],deep[N],f[N];structNo
weixin_34396103
·
2020-08-09 00:57
BZOJ 1103 DFS序+
线段树
思路:先搞出来DFS序进入这个点+1出这个点-1
线段树
维护前缀和(因为还要修改)搞定修改的时候只修改底下节点就OK了(边权–>点权不多说)//BySiriusRen#include#include#includeusingnamespacestd
weixin_34211761
·
2020-08-09 00:53
[UOJ164]V
线段树
真是好东西...每个
线段树
节点维护四个标记:$a,b,maxa,maxb$,$(a,b)$表示对子树内的所有数执行$x'=\max(x+a,b)$,$maxa,maxb$是历史最大标记,初始时$a
weixin_33834679
·
2020-08-09 00:37
2019.02.12 bzoj5294: [Bjoi2018]二进制(
线段树
)
传送门题意简述:给出一个长度为nnn的二进制串。你需要支持如下操作:修改每个位置:1变0,0变1询问对于一个区间的子二进制串有多少满足重排之后转回十进制值为333的倍数(允许前导000)。思路:考虑一个xxx位的包含有yyy个111的二进制串,它是333的倍数当如下任意一个条件成立:yyy是偶数。yyy是大于111的奇数且x−y>=2x-y>=2x−y>=2emmmmemmmmemmm
weixin_30940783
·
2020-08-09 00:17
【洛谷4770/UOJ395】[NOI2018]你的名字(后缀数组_
线段树
合并)
题目:洛谷4770UOJ395分析:一个很好的SAM应用题……一句话题意:给定一个字符串\(S\)。每次询问给定字符串\(T\)和两个整数\(l\)、\(r\),求\(T\)有多少个本质不同的非空子串不是\(S[l,r]\)的子串。首先显然是“正难则反”,求有多少个本质不同的非空子串是\(S[l,r]\)的子串(下面的“答案”一词指的是这个值)。先考虑没有\(l\)和\(r\)限制的情况。分别处理
weixin_30919429
·
2020-08-09 00:13
bzoj2819 DFS序 + LCA +
线段树
https://www.lydsy.com/JudgeOnline/problem.php?id=2819题意:树上单点修改及区间异或和查询。思维难度不高,但是题比较硬核。整体思路是维护每一个结点到根节点的距离。查询u,v树链上的异或和就是query(v)^query(u)^a[lca(u,v)],所以就要想办法维护树上的结点到根节点的异或和。网上的题解大多是选择直接维护答案,修改的时候修改整颗子
weixin_30882895
·
2020-08-09 00:05
php
数据结构与算法
[国家集训队]Tree II
区间乘和区间加按
线段树
的方式想。那么就先要下放乘标记,再下放加标记。但这两个和反转标记是没有先后顺序的。对于区间加,sum加的是区间长度\(*\)lazy标记。
weixin_30782871
·
2020-08-08 23:45
蒟蒻划水日志
6.24上午:1.ACluoguP3899[湖南集训]谈笑风生
线段树
合并2.ACluoguP4137RmqProblem/mex主席树+思维3.ACluoguP4172[WC2006]水管局长LCT维护动态
weixin_30674525
·
2020-08-08 23:21
BZOJ5294 BJOI2018二进制(
线段树
)
考虑
线段树
维护区间内的一堆东西,合并两节点时计算跨过区间中点的答案。
weixin_30493321
·
2020-08-08 23:08
NOIP2016 天天爱跑步(
线段树
/桶)
题目描述小c同学认为跑步非常有趣,于是决定制作一款叫做《天天爱跑步》的游戏。天天爱跑步是一个养成类游戏,需要玩家每天按时上线,完成打卡任务。这个游戏的地图可以看作一一棵包含N个结点和N-1条边的树,每条边连接两个结点,且任意两个结点存在一条路径互相可达。树上结点编号为从1到N的连续正整数。现在有个玩家,第个玩家的起点为Si,终点为Ti。每天打卡任务开始时,所有玩家在第0秒同时从自己的起点出发,以每
weixin_30454481
·
2020-08-08 23:29
Dynamic Rankings—带单点修改的主席树
\(\mathcal{\color{red}{Solution}}\)我们考虑……对于支持修改这种操作……好像对于前缀和支持的函数式
线段树
很不友好
weixin_30369087
·
2020-08-08 23:08
BZOJ5294 BJOI2018 二进制
线段树
传送门因为每一位\(\mod3\)的值为\(1,2,1,2,...\),也就相当于\(1,-1,1,-1,...\)所以当某个区间的\(1\)的个数为偶数的时候,一定是可行的,只要把这若干个\(1\)放在一起就可以了。而当某个区间的\(1\)的个数为奇数的时候,那么最优的方式显然是\(1\)和\(-1\)两两配对,剩下\(3\)个\(1\),然后留下至少\(2\)个\(0\),将\(111\)拼成
weixin_30363981
·
2020-08-08 23:07
[洛谷P1501] [国家集训队] Tree II
lazy_tag、pushup、pushdown什么的,跟
线段树
差不多。就是一道大杂烩嘛......各种乱搞。这里不再写cut(x,y)函数了,而是写了isolate(x,y)函数。
weixin_30344131
·
2020-08-08 23:03
[Notes] 可持久化数据结构学习笔记
可持久化数据结构就是使数据结构可以返回历史版本一般的实现方法是新建有修改的点其他点与上一版本共用这样做到空间复杂度带上一个或两个log主席树(可持久化
线段树
、函数式
线段树
)每次新增一条从叶子到根的链因为有修改学习参考资料
里阿奴摩西
·
2020-08-08 22:41
Notes
可持久化数据结构
ZOJ 2112 Dynamic Rankings 树状数组套主席树 单点修改求动态区间第K大
询问从第l个数到第r个数中的第k小的数2.修改某个位置的数为t大致思路:主席树学习第二题...就是对原序列建立主席树然后用树状数组来维护另外一颗主席树来表示原主席树的变化因为每次修改都会导致需要修改一整段
线段树
Gatevin
·
2020-08-08 22:10
ZOJ
ACM_Chair_Tree
线段树
入门&lazy思想
线段树
将区间分成若干个子区间,子区间又继续分,直到区间为一个点(区间左值等于右值)对于父区间[a,b],其子区间为[a,(a+b)/2]和[(a+b)/2+1,b]用于求区间的值,如区间最值、区间的和等
角落的秋天
·
2020-08-08 22:27
算法入门系列
【bzoj4597】[Shoi2016]随机序列
线段树
像我这种在SDOI考场上连普及组难度的题都A不掉的人活该滚粗,能解决问题的方法那么多,为什么我非要写那个最慢的高精度?用自己水的一比的极限数据测了一下,就自信的交了?不要被什么乱七八糟的求和给吓到了,实际上一加一减全抵消了,因为第一个数的符号永远为+,所以剩下的都是跟第一个数有关的,即前缀乘积。sum[i]=a[1]*a[2]*……*a[i],考虑sum[i]对答案的贡献,sum[i]后面的符号不
qingdaobaibai
·
2020-08-08 22:16
数据结构
【bzoj4530】[Bjoi2014]大融合 并查集+
线段树
合并
线段树
合并好神啊,表示我这种傻逼只能想到树剖O(nlog^2n)做法先把原树建出来,每次查询就等价于计算子节点的size*(父亲节点所在联通块的大小-子节点的size)用并查集找到节点的祖先,维护子树size
qingdaobaibai
·
2020-08-08 22:16
数据结构
论在LCT上下放标记
对LCT上标记下放的一些研究实验题目Codevs1082
线段树
练习3http://codevs.cn/problem/1082/实验目的探究在LCT上下放标记的方式与特点,并与
线段树
和平衡树Splay做一下比较
t14t41t
·
2020-08-08 21:32
动态树LCT
OI党坚毅的步伐
【bzoj4530】【BJOI2014】【大融合】【dfs序+
线段树
合并+并查集】
Description小强要在N个孤立的星球上建立起一套通信系统。这套通信系统就是连接N个点的一个树。这个树的边是一条一条添加上去的。在某个时刻,一条边的负载就是它所在的当前能够联通的树上路过它的简单路径的数量。例如,在上图中,现在一共有了5条边。其中,(3,8)这条边的负载是6,因为有六条简单路径2-3-8,2-3-8-7,3-8,3-8-7,4-3-8,4-3-8-7路过了(3,8)。现在,你
sunshinezff
·
2020-08-08 21:29
线段树
BZOJ 3235 攻略 贪心+
线段树
+dfs序列
题目描述题目简述:树版[k取方格数]众所周知,桂木桂马是攻略之神,开启攻略之神模式后,他可以同时攻略k部游戏。今天他得到了一款新游戏《XX半岛》,这款游戏有n个场景(scene),某些场景可以通过不同的选择支到达其他场景。所有场景和选择支构成树状结构:开始游戏时在根节点(共通线),叶子节点为结局。每个场景有一个价值,现在桂马开启攻略之神模式,同时攻略k次该游戏,问他观赏到的场景的价值和最大是多少(
shiyongyang
·
2020-08-08 21:55
线段树
【
线段树
】[LUOGU NOIP2016 天天爱跑步]
线段树
合并+树上差分
题目:题目链接:[LUOGUNOIP2016天天爱跑步]题解:(这个题,,真的,其实学这个权值
线段树
的知识,就是为了写这道题的,,,但是,尽管半个小时码完了代码,但是,,,调了一下午,,,,o(╥﹏╥)
blng
·
2020-08-08 21:25
线段树
线段树
[LUOGU 可怜的狗狗] 主席树 单点修改+区间查询
LUOGU可怜的狗狗题解:学主席树安利的博客:传送门这个题啊,真的是,,,一个完全可以用莫队写的题,我偏偏写了主席树,,唉,还不是被怼只会写莫队分块,,,就好好学了主席树,但是,主席树,尽管是名义上的可持久化
线段树
blng
·
2020-08-08 21:25
刷题
vjudge: spoj--to the moon(主席树区间修改)
可持久话
线段树
裸题。其实区间修改就体现了,只要主席树更新的节点,就要重建。
running_in_dark
·
2020-08-08 21:28
主席树
上一页
69
70
71
72
73
74
75
76
下一页
按字母分类:
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
其他