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算法_线段树
HDU 4614
线段树
+二分
一开始做用自己的方法,一直WA,自己也出不出错误的例子,放弃了自己的代码,看了一下别人的方法都是
线段树
+二分,逻辑很清晰,也很好写,基本就是板子。
一个蒟蒻
·
2020-08-18 07:58
hdu4614
线段树
区间修改值,区间查询和
第一个二分查找的是第num个0,第二个二分查找的是最后一个0把lrj大白书里的
线段树
重打一遍成以后模板,关于里面的maintain函数:1#include2#include3#include4usingnamespacestd
weixin_34368949
·
2020-08-18 07:26
HDU 4614
线段树
+二分查找
VasesandFlowers题目链接http://acm.hdu.edu.cn/showproblem.php?pid=4614ProblemDescriptionAliceissopopularthatshecanreceivemanyflowerseveryday.ShehasNvasesnumberedfrom0toN-1.Whenshereceivesomeflowers,shewill
weixin_30404405
·
2020-08-18 07:25
hdu4614
线段树
区间覆盖和区间查询
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=4614VasesandFlowersTimeLimit:4000/2000MS(Java/Others)MemoryLimit:65535/32768K(Java/Others)TotalSubmission(s):5201AcceptedSubmission(s):2159ProblemDescrip
sdau_fangshifeng
·
2020-08-18 07:25
数据结构
寒假集训
模板
hdu 1540
题目以前一直以为
线段树
区间合并是什么新奇的玩意,原来以前做过的区间最大子序列和就是区间合并的一种,都是毒瘤题……#include#include#include#include#include#include
a10.
·
2020-08-18 07:52
线段树
hdu 4027
线段树
区间开方
题目其实也没有想象中那么难,只要区间里面的数都为1,就不再需要开方了,然后对于>1的数,直接对每一个点暴力开方,然后就可以了。#include#include#include#include#include#include#include#include#include#include#include#include#include#include#include#defineIOios::syn
a10.
·
2020-08-18 07:52
线段树
hdu4614(二分查询
线段树
)
solution:
线段树
+二分很容易想到对1操作二分找寻两个位置。其它还是常规写
林伏案
·
2020-08-18 07:52
=====数据结构=====
线段树
hdu 4614
线段树
+二分
输出本次放花的起始位置求和操作可以用
线段树
解决,操作1的放置的起始位置,通过二分求就可以#include#include#include#include#include#definerep(i,j,k)
cadongllas
·
2020-08-18 07:21
二分
数据结构
hdu
线段树
hdu4614
线段树
+二分
/*hdu4614
线段树
裸题题意有n个花瓶,两种操作:1LR表示有R朵花,从L开始放,如果遇到有花的瓶子就跳过知道n这个瓶子,输出放花的起始点的花瓶下标2LR表示清空L~R这之间的花瓶中的花,输出有多少支花被扔掉
甦萌
·
2020-08-18 07:21
线段树
二分
hdu 4614
线段树
+二分~
VasesandFlowersTimeLimit:4000/2000MS(Java/Others)MemoryLimit:65535/32768K(Java/Others)TotalSubmission(s):728AcceptedSubmission(s):251ProblemDescriptionAliceissopopularthatshecanreceivemanyflowersevery
JustSteps
·
2020-08-18 07:20
acm线段树
hdu 4614
线段树
+二分
题目这题我们的
线段树
储存的是区间内空的树有几个,这样就很好做了。如果区间内没有空的那肯定输出那个字符串,然后二分去找k=1的l和r,k=2就用区间长度减去区间询问就好了,其实也不难。
a10.
·
2020-08-18 07:48
线段树
二分
【DP、
线段树
优化】琪露诺
/吐血DP方程可以很简单的推出来,f[i]=max{f[k]}+a[i]然而这样做是O(n^2)的看一下数据,200000的话要不nlogn要不n由于题解里面单调队列和优先队列都有人用了,那就来一发
线段树
吧
zheng_lw
·
2020-08-18 07:09
线段树
DP
单调性
【LOJ#10115,tyvj1473】校门外的树(第3次升级)
PS:思路来源于Clove_unique的博客,在此万分感谢~~戳我获得更好的观看效果这道题可以用树状数组轻松过,然而…树状数组不太熟悉,还是用
线段树
比较好(虽然代码比较长)【思路分析】【一开始的思路】
zheng_lw
·
2020-08-18 07:09
LOJ
线段树
【权值
线段树
】离散化介绍 (+利用
线段树
求逆序对)
先介绍一下离散化桶排大家应该知道,就是开一个数组(下标为数值,记录了该数值的出现次数)然后遍历过去如果出现次数不为零,那就输出这些数字,理论时间复杂度可以达到O(N)但是由于内存限制,不能开很大的数组。然而如果某个数列中的数字不要求大小确定,只要求这些数字有相对的大小就够了的话,离散化就有了用武之地举个例子:数列38752000000000000000我们发现有几个数之间差距很大,但是我们用不到数
zheng_lw
·
2020-08-18 07:08
线段树
RMQ算法
当然我们可以采用枚举,但是我们也可以使用
线段树
来优化,复杂度为(nlogn
xuzengqiang
·
2020-08-18 06:09
RMQ(区间最值查询)入门知识
2、
线段树
,O(n)-O(qlogn)online。3、ST(实质是动态规划),O(nlo
xky1306102chenhong
·
2020-08-18 06:17
ACM
BZOJ 4034 [HAOI2015]T2 树链剖分+
线段树
题意:一棵以1为根的树,有n个节点,m个操作。第一种单点修改。第二种修改一个点的子树。第三种询问一个点到根的路径上所有点的权值和。解析:看到有人在做我就跑过来看了一下,看完题发现这不SB题么--于是就写了下,差点被出题人气死。TMD那个fr,to难道就是逗我玩的?你丫fr,to不代表有向边?这么出题不会掉RP?改了20分钟就这错了?你逗我?第一种操作略第二种操作修改子树…dfs序。第三种链剖完之后
wzq_QwQ
·
2020-08-18 06:51
Segment
Tree
Tree
Chain
BZOJ刷题录
POJ-1177 Picture
线段树
+扫描线+离散化扫描线是用于求解矩形覆盖面积或者矩形并轮廓长度的算法,一般都是搭配
线段树
使用再加上离散化,可以把时间优化到最少附上一个讲扫描线挺详细的链接:https://blog.csdn.net
_zlWang
·
2020-08-18 06:02
树链剖分专题训练及相应题目总结(洛谷)
我觉得树链剖分最主要的就是怎么与
线段树
结合将路径信息转变成区间线段信息,以及在
线段树
中懒标记的使用,而且树链剖分代码量有点大,所以需要很细心。
SuperDeyang
·
2020-08-18 06:17
洛谷题单总结
树论
POJ2482 Stars in Your Window
线段树
分析题面很感人,撩妹子的小trick;依旧是扫描线法,在此之前需要一步转化,考虑对于每颗星星,能将其覆盖的矩形右上角的轨迹所组成的矩形,显然答案变为求一块区域,使得矩形在其上覆盖产生的权值和最大,建一棵
线段树
支持区间加和区间查询最大值
Brute Force Kevin
·
2020-08-18 06:40
数据结构
《算法竞赛进阶指南》
题解
IOI1998 Picture
线段树
pid=1828分析扫描线法,
线段树
节点同时记录区间端点是否被覆盖,区间中有几条水平线,累加答案时,注意线段会有覆盖,因此应加上变化量;根据记录的水平线数量统计上水平线长度。
Brute Force Kevin
·
2020-08-18 06:40
数据结构
HDOJ1255 覆盖的面积
线段树
题目链接http://acm.hdu.edu.cn/showproblem.php?pid=1255分析与普通的面积并不同的是,我们要维护被覆盖了至少两次的区间,还需同时维护至少覆盖了一次的区间,后者是很容易维护的,而对于前者来说,若整个区间被至少覆盖了两次,则结果为区间长度,否则,若区间长度为111,则结果为000,否则,若区间被覆盖了一次,则结果为子区间被至少覆盖一次的长度之和,否则结果为子区
Brute Force Kevin
·
2020-08-18 06:40
数据结构
洛谷P4556 雨天的尾巴 树上差分+权值
线段树
题目链接https://www.luogu.org/problem/P4556分析对于树上链的操作,可以用树上差分来做;由于粮食有种类,树上每个节点建一棵权值
线段树
来记录答案;树上差分后要合并,用
线段树
合并来实现
Brute Force Kevin
·
2020-08-18 06:40
数据结构
《算法竞赛进阶指南》
CodeForces438D The Child and Sequence(
线段树
取模)
简化版题意:给定一个长度为n的非负整数序列a,你需要支持以下操作:1:给定l,r,输出a[l]+a[l+1]+…+a[r]。2:给定l,r,x,将a[l],a[l+1],…,a[r]对x取模。3:给定k,y,将a[k]修改为y。n,m区间最大值那么退出,否则两边都递归下去。单个数被有效地取模一次只会花费O(logn)的时间,并且数值至少减半,因此每次修改至多使时间复杂度增加O(lognlogW)。
J__lxj
·
2020-08-18 06:12
线段树
线段树
线段树
讲解
线段树
模板1参考题解:#include#includeusingnamespacestd;#definemaxn100010typedefstructnode{intl;//左孩子intr;/
豆苗子
·
2020-08-18 05:20
acm模板/常用算法
HDU-6638【2019 Multi-University Training Contest 6】【区间最大子段和】【
线段树
】
SourceHDU-6638SnowySmileTimeLimit:4000/4000MS(Java/Others)MemoryLimit:524288/524288K(Java/Others)TotalSubmission(s):1609AcceptedSubmission(s):486ProblemDescriptionTherearenpiratechestsburiedinByteland
arc3102
·
2020-08-18 05:20
Codeforces Global Round 7 E. Bombs
思路:维护一个已经加入但还没必要爆炸的炸弹集合s;在加入q[i-1]前对其进行如下循环操作:1.找到其控制范围内被最右的一个炸弹已经引爆了的下标(
线段树
区间求max),将q[i-1]与该炸弹swap(相当于用
zhourenhao
·
2020-08-18 05:19
AtCoder Beginner Contest 163 D - Sum of Large Numbers(规律+同余)
整理的算法模板:
ACM算法
模板总结(分类详细版)D-SumofLargeNumbers/TimeLimit:2sec/MemoryLimit:1024MBScore:400400pointsProblemStatementWehaveN
bool_memset
·
2020-08-18 05:18
思维
AtCoder Beginner Contest 164 D - Multiple of 2019 (数论规律同余)
整理的算法模板:
ACM算法
模板总结(分类详细版)D-Multipleof2019TimeLimit:2sec/MemoryLimit:1024MBScore:400400pointsProblemStatementGivenisastringSSconsistingofdigitsfrom1through9
bool_memset
·
2020-08-18 05:18
基础算法——数论
ACM算法
模板---动态规划
数字三角形的最大值3324511341把局部贪心转化为全区贪心递归1.不使用动态规划#include#includeusingnamespacestd;intdp[101][101];intn;intmaxx(intx,inty){if(x==n){returndp[x][y];//最后一行}else{returnmax(maxx(x+1,y),maxx(x+1,y+1))+dp[x][y];//
公费旅游热爱者
·
2020-08-18 05:47
acm算法
Acwing 95. 费解的开关(位运算+递推)
整理的算法模板:
ACM算法
模板总结(分类详细版)你玩过“拉灯”游戏吗?25盏灯排成一个5x5的方形。每一个灯都有一个开关,游戏者可以改变它的状态。每一步,游戏者可以改变某一个灯的状态。
bool_memset
·
2020-08-18 05:46
训练
HDU - 5172 GTY's gay friends (
线段树
+前缀和)
GTYhasnngayfriends.Tomanagethemconveniently,everymorningheorderedallhisgayfriendstostandinaline.Everygayfriendhasacharacteristicvalueaiai,toexpresshowmanlyorhowgirlishheis.You,asGTY'sassistant,havetoa
2018_XWJ
·
2020-08-18 05:15
数据结构
A Magic Lamp HDU - 3183
这个题方法很简单啊,可是没有考虑01这个例子,就wr了整整一下午写个博客纪念一下/*
线段树
维护区间最小值贪心:每次找可行区域的最小值*/#include#include#include#includeusingnamespacestd
codediyi
·
2020-08-18 05:50
线段树
rmq
洛谷 - P3373
线段树
区间-修改(进阶)
本题作为模板题实在是太屈才了,是一道很好的题目,做完以后本人对
线段树
有了更深的理解。单就此题而言,两种修改操作是互相影响的,修改乘法的时候是要先考虑加法的修改。
看见我请叫我去学习
·
2020-08-18 05:49
数据结构
树状数组
3.树状数组和
线段树
的区别在哪里树状数组可以解决的问题都可以用
线段树
解决,这两者的区别在哪里呢?树状数组的系数要少很多,就比如字符串模拟大数可以解
视觉小子
·
2020-08-18 05:34
ACM
RMQ问题
二、算法(1)朴素复杂度:O(n)-O(qn)(2)
线段树
复杂度:O(n)-O(qlogn)参考文章:https://blog.csdn.net/weixin_4
STZG
·
2020-08-18 05:03
#
C++
#
经典问题
最大数(
线段树
:单点修改+单点查询)
原题链接题意给定一个正整数数列a1,a2,…,an,每一个数都在0∼p−10∼p−1之间。可以对这列数进行两种操作:添加操作:向序列后添加一个数,序列长度变成n+1n+1;询问操作:询问这个序列中最后LL个数中最大的数是多少。程序运行的最开始,整数序列为空。写一个程序,读入操作的序列,并输出询问操作的答案。输入格式第一行有两个正整数m,p,意义如题目描述;接下来m行,每一行表示一个操作。如果该行的
weixin_42104573
·
2020-08-18 05:18
数据结构-线段树
dp的进阶 (一)
,生命值转移时候需要注意的②集合的定义,判断二进制内部是否有环③很难想到的背包问题④博弈类型的dp⑤排列组合类型dp⑥01背包的变种(01背包+完全背包)⑦codeforcesGoodbye2016E
线段树
维护
weixin_34344403
·
2020-08-18 05:10
hdu-5475 An easy problem---
线段树
+取模
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=5475题目大意:给X赋初值1,然后给Q个操作,每个操作对应一个整数M;如果操作是1则将X乘以对应的M,如果是2则除以第M次操作对应的M',求每次操作后X的值对给定值取摸的结果。解题思路:第一眼看这道题,以为就是水题,直接模拟暴力呀,但是发现这样是错误的,因为这里有除法,对除法取模,就应该是逆元,但是逆元
weixin_34302561
·
2020-08-18 05:32
bzoj1690开关灯
线段树
模版1690开关灯1programhehe;2type3tree=record4l,r,h,s:longint;5end;6var7n,m,i,j,k,f:longint;8x:array[0..1000000
weixin_34162401
·
2020-08-18 04:57
CF 187D BRT Contract
T2去了就没想细节QAQ大概就是我们逆序求一下每一个点从0时刻开始走到终点需要用的时间f我们需要找到它遇到的第一个红灯这个就是模意义下的一段区间最小值(把l[i]看做下标i作为权值)这个可以通过动态开点
线段树
实现
weixin_33743703
·
2020-08-18 04:40
题解 P3372 【【模板】
线段树
1】(珂朵莉树解法)
这道题可以用珂朵莉树做,但是由于数据比较不随机,而我也没有手写一颗平衡树,所以就被卡掉了,只拿了70分。珂朵莉树是一种基于平衡树的(伪)高效数据结构。它的核心操作是推平一段区间。简而言之,就是把之前的零零碎碎的都干掉,用一个美而饱满的大区间取代。然后我们更新操作和查询操作就暴力遍历一遍,统计一下和就可以了。Split操作1inlineset::iteratorsplit(intpos){2set:
weixin_33725807
·
2020-08-18 04:05
洛谷P3332 K大数查询
区间插入的话,和普通的整体二分差不多,改成
线段树
维护区间小于mid的数的个数,把增加一个数看成是
线段树
上区间的加+1。//luogu-
weixin_30790841
·
2020-08-18 04:52
整理各种模板(准备随时弃坑)
线段树
1(真题)#include#include#include#includeusingnamespacestd;constintN=1e5+100;longlongtr[N*4],flag[N*4]
weixin_30768175
·
2020-08-18 04:48
P1988 最大数
这道题的解决方法有不少,例如单调栈,单调队列,
线段树
之类的。由于把这道题当作单调栈的练习来做的,所以就只用了单调栈。
weixin_30670925
·
2020-08-18 04:00
NOI&&NOIP知识点集萃
更新日志\(update:2019-3-4\)更新了自为风月马前卒的后缀数组(省选不到一个月了,我才开始学后缀数组怕是要凉凉)\(update:2019-2-21\)更新了一篇李超
线段树
的讲解\(update
weixin_30635053
·
2020-08-18 04:24
HDU 4027【
线段树
+求和+动态改变区间各数的值】
解题思路:看到题目,应很自然想到了
线段树
和数状数组,两种结构都能快速求出区间之和。但两者的优点不尽相同,前者在维护方面更自由一点,后者能更快速维护和求和。这题的解题突破点是:当一个数开根后得到1或0时
weixin_30463341
·
2020-08-18 04:53
2019杭电多校 Snowy Smile hdu6638 (
线段树
最大子段和)
题意:散落一些点,有正负价值,框一个矩形,使得矩形中的价值总和最大题解:先把y离散化,之后x排序后依次插入点,枚举每一种不同的x坐标作为上边界,枚举下边界,
线段树
更新最大子段和#include#include
weixin_30437337
·
2020-08-18 04:48
Picture POJ - 1177 (
线段树
-扫描线)
Anumberofrectangularposters,photographsandotherpicturesofthesameshapearepastedonawall.Theirsidesareallverticalorhorizontal.Eachrectanglecanbepartiallyortotallycoveredbytheothers.Thelengthoftheboundary
weixin_30419799
·
2020-08-18 04:45
多次查询一段区间内有多少个子区间满足其中一个端点为区间最大值。
然后对询问离线,由于要求只包含区间内的贡献,扫描线+
线段树
解决。
weixin_30414155
·
2020-08-18 04:13
上一页
47
48
49
50
51
52
53
54
下一页
按字母分类:
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
其他