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
#线段树
线段树
(segment tree)
线段树
在一些acm题目中经常见到,这种数据结构主要应用在计算几何和地理信息系统中。下图就为一个
线段树
:(PS:可能你见过
线段树
的不同表示方式,但是都大同小异,根据自己的需要来建就行。)
weixin_33979203
·
2020-08-09 18:45
《数据结构》
线段树
入门(一)
今天介绍一种非常特殊的数据结构——
线段树
首先提出一个问题:给你n个数,有两种操作:1:给第i个数的值增加X2:询问区间[a,b]的总和是什么?
weixin_30788619
·
2020-08-09 17:37
poj 3468 A Simple Problem with Integers(
线段树
+树状数组区间更新区间查询)
ASimpleProblemwithIntegersTimeLimit:5000MSMemoryLimit:131072KTotalSubmissions:122283Accepted:37929CaseTimeLimit:2000MSDescriptionYouhaveNintegers,A1,A2,…,AN.Youneedtodealwithtwokindsofoperations.Onety
小白菜小青菜
·
2020-08-09 17:21
ACM_线段树
ACM_树状数组
线段树
入门
最近在看些
线段树
的东西,虽然不是搞ACM的,但了解这些东西还是有好处的。
judyge
·
2020-08-09 17:14
----高级数据结构
数据结构与算法(十)
线段树
(Segment Tree)入门
本文主要包括以下内容:
线段树
的概念
线段树
的基本操作实现一个
线段树
LeetCode相关
线段树
的问题
线段树
的概念
线段树
(SegmentTree)也是一棵树,只不过元素的值代表一个区间。
Chiclaim
·
2020-08-09 17:13
数据结构与算法
Android
HDU——1698(
线段树
区间修改模板题)Just a Hook
原题链接:http://acm.hdu.edu.cn/showproblem.php?pid=1698题意:有一个挂钩是由连续金属棒组成,金属棒编号为1~n,我们会进行若干的区间替换操作,问最后的金属棒总和价值是多少?解题思路:这是一个典型的区间修改问题,我们按模板写就行,要注意的是这里是对金属棒进行替换,所以我们修改的时候一定要替换而不是相加,具体看代码。PS:此道题我们甚至都不需要QueryT
叶的一生
·
2020-08-09 17:33
线段树专题
HDU
线段树
入门——Segment Tree
线段树
是在区间求和、区间求最大值或最小值等问题上非常实用的一种算法,它的本质是一种二叉搜索树,可以实现将一个区间划分成一些单元区间,每个单元区间对应
线段树
中的一个叶结点。
diaofu6766
·
2020-08-09 17:44
2020牛客暑期多校训练营(第八场)A.All-Star Game
那就直接把每个关系当成一个边,按时间建
线段树
,用可撤销并查集,维护图的连通性即可。对于有单独的fans组成一个联通快的显然无解了。。
pubgoso
·
2020-08-09 17:15
线段树
并查集
程序设计之离散化(~详细整理解析)
例如,在建造
线段树
空间不够的情况下,可以考虑离散化。那么离散化究竟是什么?就是把无限空间中的有限个体映射到有限空间中去,以此来提高时空
叶的一生
·
2020-08-09 17:35
程序设计
算法
离散化
程序设计
线段树
入门(Segment Tree)详细整理(超简单易学的数据结构)
文章目录
线段树
入门(SegmentTree)~详细整理(超简单易学的数据结构)一、什么是
线段树
?
叶的一生
·
2020-08-09 17:35
线段树专题
线段树
算法
acm竞赛
POJ——3468(
线段树
区间修改模板题)Simple Problem with Integers
解题思路:这是一道
线段树
区间修改的模板题,我们理解好题意照做即可,要注意范围,利用longlong来存储。
叶的一生
·
2020-08-09 17:03
线段树专题
算法
线段树
区间修改
hdu 5068 Harry And Math Teacher
线段树
一个
线段树
t[x][md],md表示四种从l层走到r层的进与出的四种搭配(0-0,0-1,1-
zzblac
·
2020-08-09 16:41
HDU-4819-Mosaic
这个题需要求二维区间的最大值最小值,并完成单点更新,这就应该说二维
线段树
进行解决,对二维
线段树
的处理方面还不够熟练吧,写的有点复杂~代码:#include#include#includeusingnamespacestd
南宮逸辰
·
2020-08-09 16:15
ACM
HDU
CodeForces 1393B Applejack and Storages
ApplejackApplejackApplejackandandandStoragesStoragesStorages由于本菜鸡很笨,并没有想到什么简单的思路,所以有幸在时间内用权值
线段树
水过,u1s1
Vain957
·
2020-08-09 16:37
ACM刷题题解
hdu1264之
线段树
+扫描线
CountingSquaresTimeLimit:2000/1000MS(Java/Others)MemoryLimit:65536/32768K(Java/Others)TotalSubmission(s):1049AcceptedSubmission(s):523ProblemDescriptionYourinputisaseriesofrectangles,oneperline.Eachre
星天93
·
2020-08-09 16:42
线段树
P3834 【模板】可持久化
线段树
1(主席树)
题目背景这是个非常经典的主席树入门题——静态区间第K小数据已经过加强,请使用主席树。同时请注意常数优化题目描述如题,给定N个整数构成的序列,将对于指定的闭区间查询其区间内的第K小值。输入输出格式输入格式:第一行包含两个正整数N、M,分别表示序列的长度和查询的个数。第二行包含N个整数,表示这个序列各项的数字。接下来M行每行包含三个整数l,r,kl,r,k,表示查询区间[l,r][l,r]内的第k小值
whisperlzw
·
2020-08-09 15:29
洛谷
主席树
hdu6315 Naive Operations(
线段树
)
NaiveOperationsTimeLimit:6000/3000MS(Java/Others)MemoryLimit:502768/502768K(Java/Others)TotalSubmission(s):4311AcceptedSubmission(s):1891ProblemDescriptionInagalaxyfar,faraway,therearetwointegersequen
whisperlzw
·
2020-08-09 15:29
线段树树状数组
hdu
20200804总结
今天做了几个难度比较小的题,一下子就来感觉了,很爽,尽管我觉得并没有用到
线段树
的多少知识,但是做题的时候是真的爽。
奶茶只喝三分糖
·
2020-08-09 15:40
线段树
区间gcd
l==r输出0操作3l到r的gcd难点就是是gcd要想求区间能修改的gcd你必须要知道一些知识gcd(a,b)=gcd(a,b-a).gcd(a,b,c)=gcd(a,b-a,c-a)以此类推然后只要
线段树
维护相邻两个的差值就可以了当遇到操作
ccsu_zb
·
2020-08-09 15:35
Codeforces Round #590 (Div. 3) D - Distinct Characters Queries(单点修改+区间查询)
思路:用26位二进制表示26个英文字母,使用
线段树
进行或运算。#includeusingnamespacestd;intd[400000];chara[100010];voidbuild(in
weixin_44705665
·
2020-08-09 15:41
线段树
2020牛客多校第四场A题 Ancient Distance dfs序+
线段树
+k级祖先
AncientDistance题意NNN个点以点111为根的树,在树上确定KKK个关键点,每个点的权值valvalval为点与点到根节点上碰到的第一个关键点的距离(若路径上没有关键点,那么权值为inf\infinf),答案为所有点中最大权值的最小值。现在求K=1,2,...,NK=1,2,...,NK=1,2,...,N的答案之和题解题意比较难理解,看看样例应该能懂如果确定KKK值,那么我们单次
linbinwu123
·
2020-08-09 15:23
树和森林
#
线段树
数据结构
【2019年CCPC网络赛】【HDU 6703】【array】【
线段树
】
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=6703题意:给一个数组ana_nan,ai∈[1,n]a_i∈[1,n]ai∈[1,n],且各不相同现在有两种操作:①将aposa_{pos}apos加上10710^7107②查找满足大于等于kkk且不等于a1,a2,⋅⋅⋅,ara_1,a_2,···,a_ra1,a2,⋅⋅⋅,ar中的任意一个的最小值
linbinwu123
·
2020-08-09 15:52
#
线段树
数据结构
Codeforces - Ant colony
我们直接
线段树
区间维护这个个数即可。或者维护区间gcd,然后主席树计算区间等于gcd的个数。
青烟绕指柔!
·
2020-08-09 15:29
线段树
Codeforces
Ant colony (RMQ or
线段树
)
我们求区间gcd的话,既可以利用
线段树
性质区间递归下去然后返回求解,但是每次查询是log的,所以还可以用RMQ,查询
weixin_30918633
·
2020-08-09 14:55
Ant colony
线段树
F.Antcolonytimelimitpertest1secondmemorylimitpertest256megabytesinputstandardinputoutputstandardoutputMoleishungryagain.Hefoundoneantcolony,consistingofnants,orderedinarow.Eachanti(1 ≤ i ≤ n)hasastren
weixin_30878361
·
2020-08-09 14:18
hdu 5638 Toposort (拓扑排序+
线段树
)
ToposortTimeLimit:10000/5000MS(Java/Others)MemoryLimit:131072/131072K(Java/Others)TotalSubmission(s):499AcceptedSubmission(s):203ProblemDescriptionThereisadirectedacyclicgraphwithnverticesandmedges.Yo
weixin_30663391
·
2020-08-09 13:20
codeforces 675E Trains and Statistic
线段树
+贪心统计
分析:这个题刚看起来无从下手但是我们可以先简化问题,首先可以固定起点i,求出i+1到n的最小距离它可以到达的范围是[i+1,a[i]],贪心的想,我们希望换一次车可以到达的距离尽量远即:找一个k,使得i+1#include#include#include#include#include#include#includeusingnamespacestd;typedeflonglongLL;const
weixin_30362233
·
2020-08-09 13:02
求逆序对数(冒泡排序交换次数)
求a1,a2,..,an的逆序对数一、直接求直接两个for循环跑时间复杂度O(n^2)for(inti=1;ia[j])cnt++;}}二、树状数组(或
线段树
)求建一个树状数组或
线段树
,存每个数出现的个数
vloai
·
2020-08-09 13:29
排序
分治
二分查找
HDU 5638 Toposort
可以用
线段树
去维护区间最小的入度值,这样就满
forever_24
·
2020-08-09 13:02
图论
数据结构
HDU
hdu1828(
线段树
+扫描线求周长)
这题不错,可以更加深入的了解
线段树
扫面线算法,大家之前可能做过扫描线求矩形面积,但因为求面积的某些局限性,一些细节不用写到就可以a,但求周长不行。
爱生活的程序猿
·
2020-08-09 13:16
数据结构
扫描线
线段树
HDU 5239 Doom(
线段树
)
题意:给出一个长度为n的序列,和m次查询,每次查询一个区间的和,但查询之后把区间内每个点的值平方一次,所有的结果模上9223372034707292160。其实这题一点也不难。。。一个数又平方又模的次数多了以后,会维持在一个固定的值不动。打表可以发现规律,但是仔细想想也是可以想明白的。如果x的素因子的集合包含模的素因子集合,那么经过足够多的次数之后,取模会直接为0;反之,据费马小定理,则会维持一个
BellWind1995
·
2020-08-09 13:54
ACM
—
数据结构
ACM
—
数论
(多校第一场1004)HDU5726 GCD(区间GCD查询+)
做法:使用
线段树
,或RMQ维护区间GCD,并且要预处理出所有可能出现的GCD值的区间数量。针对固定左端点,一直向右GCD阶梯状减小的特性,大概有两种做法。
WePlayDirty
·
2020-08-09 13:23
2016多校赛
二分
线段树
2019牛客多校赛 第八场 H How Many Schemes(AC自动机 + 矩阵 + 向量 + 树链剖分 +
线段树
)
大致题意:给你一棵树,每条边上有一个字符串,然后有一些模式串。现在给你一个询问,问你u到v的路径上,每个条边任意选择一个字符,最后按照顺序组成一个字符串,最后的字符串包括至少一个模式串的方案有多少种。看起来很难的样子,写起来其实很复杂,但是理解清楚了其实思路也不太难。首先,既然涉及到匹配问题,而且是多个模式串,很容易想到对模式串建立AC自动机。然后这题模式串长度和不超过40,也很容易可以想到可以和
alpc_qleonardo
·
2020-08-09 13:21
线段树
树链剖分
---------Online
Judge--------
牛客
2019牛客多校赛
矩阵
AC自动机
Codeforces Round #271 (Div. 2) F题 Ant colony(
线段树
)
对于以上信息,可以用
线段树
来维护。分别维护区间gcd,区间最小值以及区
Aerolite坠落
·
2020-08-09 13:46
线段树
Ant colony(
线段树
)
题意:给定一个序列,查询t个区间,询问有几个数可以整除其他的数。一个数可以整除其他的数,那么它必定是这个数的因子之一,一个数可以整除其他数,那么它必定是这些数的公因子,加上他自己的话,他就是这些数的最大公约数,一个区间内的最大公约数肯定是这个区间的最小值,因为比他大的数肯定不能整除他。所以题目是找一个区间所包含的最大公约数的个数。区间的最大公约数等于,两个子区间分别的最大公约数的最大公约数(好拗口
bubbleoooooo
·
2020-08-09 13:12
线段树与树状数组
codeforces
BestCoder Round #74 (div.2 d) hdu5638 Toposort 【
线段树
】
pid=5638题意:给出n个点m条边的有向无环图.要求删掉恰好k条边使得字典序最小的拓扑序列尽可能小.分析:因为要字典序最小,所以每次要找入度小于等于k的最小节点,用
线段树
维护即可。
Fb_by
·
2020-08-09 13:20
top排序
线段树
Increasing Frequency CodeForces - 1082E
http://codeforces.com/contest/1082/problem/E对每种颜色分开考虑对第i种颜色在
线段树
对应点上更新为1对第c种颜色在
线段树
对应点上更新为-1求一下最大子段和就是把第
sunyutian1998
·
2020-08-09 12:21
线段树/树状数组/RMQ
Query on a graph HDU - 5957
pid=5957好想但是难写先求个生成树并把多余边记下来跑个bfs序并用
线段树
维护bfs序和dfs序略有不同对一个节点遍历一遍其所有子节点并取最小最大值会得到其一级子节点在bfs序中的区间再跑一遍就会得到二级子节点在
sunyutian1998
·
2020-08-09 12:21
线段树/树状数组/RMQ
Physical Education Lessons CodeForces - 915E
/problemset/problem/915/E普通区间覆盖更新区间加权查询就是n太大需要离散化首先所有点肯定是要保留的然后就是点与点之间的线段需要保留但是只有当两点距离大于1时才会产生新的线段这样
线段树
大小还是会超过
sunyutian1998
·
2020-08-09 12:50
线段树/树状数组/RMQ
2019牛客多校第7场
E题lfw太久没写离散化后点表示区间的
线段树
题了,导致到结束也没写完E题,而且对于到
线段树
中二分找临界值不熟练,赛后补题WA了。题目链接:https://ac
SongOrz
·
2020-08-09 12:45
【Codeforces Round 271 (Div 2)F】【贪心
线段树
】Ant colony 区间段内是其他所有数因子的数的个数
Antcolonytimelimitpertest1secondmemorylimitpertest256megabytesinputstandardinputoutputstandardoutputMoleishungryagain.Hefoundoneantcolony,consistingofnants,orderedinarow.Eachanti(1 ≤ i ≤ n)hasastrengt
snowy_smile
·
2020-08-09 12:10
贪心
数论-GCD&&LCM
数据结构-线段树
洛谷 P1712 [NOI2016]区间
用
线段树
维护这个过程即可。代码:#includeusingnamespacestd;#definemaxn500000#defineinf(1mp;intcnt;
ZarOuaoan
·
2020-08-09 11:39
线段树
洛谷 P3332 [ZJOI2013]K大数查询
对于1操作,如果v小于M,在[q.l,q.r]上用
线段树
实现区间加一,值赋1,否则赋0。对于2操作,询问[q.l,q.r]上的数的个数s,若v小于等于s,值赋1,否则赋0。
ZarOuaoan
·
2020-08-09 11:39
整体二分
分块法 hdu4858 项目管理
一看到这题,首先会觉得非常像单点更新的
线段树
,但是却不怎么好操作然后应该往分块的方向去想因为只有m条边,所以所有点的度总和是2m,那么设度数>=sqrt(m)的点叫做重点,反之则是轻点那么重点的个数#include
逍遥丶綦
·
2020-08-09 11:35
ACM_数据结构
HDU - 4417 Super Mario(主席树/
线段树
+离线)
给出由n个数的数列,再给出m次查询,每次查询需要输出[l,r]内小于等于h的数有多少个题目分析:大晚上睡不着觉随便做做题,发现这个题目原来可以用主席树来做,又发现这个题目去年暑假竟然没写博客,于是补上一发
线段树
离线的做法就是对数列和询问的高度排序
Frozen_Guardian
·
2020-08-09 11:57
线段树
离线处理
主席树
CH 4302 Intervavl(
线段树
维护区间gcd,区间加)
传送门描述给定一个长度为N的数列A,以及M条指令(N≤510^5,Musingnamespacestd;#defineintlonglonginlineintread(){charch=getchar();intres=0,f=1;while(!isdigit(ch)){if(ch=='-')f=-1;ch=getchar();}while(isdigit(ch))res=(res>1)inlin
Stargazer.
·
2020-08-09 11:15
4302 Interval GCD 区间加以及求区间gcd
B0%E6%8D%AE%E7%BB%93%E6%9E%84%E8%BF%9B%E9%98%B6%E3%80%8D%E4%BE%8B%E9%A2%98/4302%20Interval%20GCD题意:两种
线段树
操作
余西子
·
2020-08-09 11:27
数据结构
HDU5726
线段树
求解区间GCD
GCDTimeLimit:10000/5000MS(Java/Others)MemoryLimit:65536/65536K(Java/Others)TotalSubmission(s):5302AcceptedSubmission(s):1908ProblemDescriptionGiveyouasequenceofN(N≤100,000)integers:a1,...,an(0usingnam
紫芝
·
2020-08-09 11:13
线段树
数论
【集训队作业】IOI 2020 集训队作业 试题泛做 13
考虑没有赋值操作的做法,则可用
线段树
维护区间中最接近424242的下一个幂的数与这个幂的差值,在区间加时,只需要在
线段树
上DFS找到差值变负的位置更新其与424242下一个幂的差值即可。
cz_xuyixuan
·
2020-08-09 11:30
【OJ】CodeForces
【类型】做题记录
12 ,
线段树
区间更新 和 区间gcd (维护差分的前缀和以及区间的gcd);
小Z经营一家加油店。小Z加油的方式非常奇怪。他有一排瓶子,每个瓶子有一个容量vi。每次别人来加油,他会让别人选连续一段的瓶子。他可以用这些瓶子装汽油,但他只有三种操作:1.把一个瓶子完全加满;2.把一个瓶子完全倒空;3.把一个瓶子里的汽油倒进另一个瓶子,直到倒出瓶子空了或者倒进的瓶子满了。当然,为了回馈用户,小Z会时不时选择连续一段瓶子,给每个瓶子容积都增加x。为了尽可能给更多的人加油,每次客户来
SSX_FIGHTING
·
2020-08-09 11:25
上一页
67
68
69
70
71
72
73
74
下一页
按字母分类:
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
其他