线段树
_Warning_
这个作者很懒,什么都没留下…
展开
-
线段树一点理解+模板
本篇介绍线段树的区间查询和单点修改线段树 今天听了lfw讲线段树(lfw讲的真心好),也试着把今天的题目做了几道(嘤嘤嘤做不动啊啊好难),对于线段树的基础应用多少有了一点点体会。 线段树顾名思义,是一种树形的数据结构,但不一样的是,这棵树的节点代表的是一个区间,也就是说,线段树很大程度上是在解决区间的问题,跟树状数组有点意思(但我觉得线段树更好理解额)。先看下面的图: ...原创 2018-08-14 21:02:45 · 201 阅读 · 0 评论 -
线段树的区间修改(增加tag)
感觉线段树的区间修改起来比树状数组操作简单多了(可能是我这个渣渣还不怎么理解树状数组的缘故吧T_T)下面我们举个例子:假如我们要把一段区间的全部值+x,该怎么办;仍旧放上线段树的图便于理解(图文并茂总归好点不是) 假如我们想把[1,3]区间的值全部+2,最直观的反应就是,把表示这个区间的节点所保存的sum值+(区间长度*2),但是需要注意到的是,这个节点的父节点和子节点...原创 2018-08-14 21:46:29 · 1309 阅读 · 0 评论 -
HDU - 1698 Just a Hook(线段树)
题目链接:戳我戳我题目大意: 给出一段序列,一开始每个数字的价值都是1,通过一些操作把某些区间数的价值改为2或者3,最后输出这段序列的总价值。题目思路: 算是比较裸的线段树模板题了(毕竟我这种菜鸡都能做出来T_T)显然是求区间和,只不过输入数字是多少(2或3),就把该区间的值改为2*区间长度或者3*区间长度,至于子节点的修改,完全参照区间修改的tag操作就行...原创 2018-08-14 21:55:43 · 143 阅读 · 0 评论 -
CSU-2151 树状数组(同时涉及区间覆盖和区间修改,思路)
题目链接(心塞塞) ——八月月赛最惨不忍睹的一道题……对不起是我太菜了,本来吸取上次的教训想要先把题看一遍找出签到题,看到D题(对没错就是这道题)感觉妈耶,这不是线段树的板题吗,签到题是它没跑了T_T,结果卡了整场……最后发现真正的巨水无比签到题是E。果然我这种菜鸡一定一定一定要把题目看完啊。。。 如果它是一道普普通通的板题,也许这次月赛就不会有那么多可爱的同学...原创 2018-08-18 20:32:41 · 972 阅读 · 0 评论