![](https://img-blog.csdnimg.cn/20201014180756913.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
线段树
菜菜魁
fighting!
展开
-
HDU - 1166 敌兵布阵 (线段树)
一个点更新,区间查询的线段树,不过点可以当成一个长度为1的区间,所以我直接采用了区间更新的办法,用lazy数组存储更新状态,使用到才更新,更加省时间。代码如下#include <iostream>#include <algorithm>#include <cstdio>#include <cstring>#include <str...原创 2018-07-29 13:33:29 · 176 阅读 · 0 评论 -
HDU - 1754 I Hate It(线段树求RMQ)
给你一个区间,求这个区间的最大值,并且要进行点更新,跟区间更新没什么区别的,不过涉及到区间更新,属于动态RMQ,静态RMQ有更简单的做法(https://blog.csdn.net/qq_38367681/article/details/81143373),本题代码如下:#include <iostream>#include <algorithm>#include...原创 2018-07-29 13:44:58 · 138 阅读 · 0 评论 -
POJ - 2528 Mayor's posters(离散化+区间更新)
给你n个壁纸,壁纸之间高度相同,按照顺序粘壁纸,问能看见多少张壁纸。首先壁纸的距离范围太长,无法用数组存储,需要先离散化,然后进行区间更新,用数组维护区间,每个区间数组的值有(-1:这个区间没壁纸;0:这个区间有多个壁纸;1~n:这个区间是第i个壁纸)。代码如下:#include <cstdio>#include <cstring>#include <a...原创 2018-07-29 17:21:07 · 223 阅读 · 0 评论 -
HDU - 1540 Tunnel Warfare(线段树)
线段树真的是一个很强大的数据结构,对于很多区间动态问题都可以解答。奈何我太菜,因为这种题往往需要很多的语言描述才能把码说明白,写博客写的很煎熬,归根到底还是我太菜。这道题很有营养,我来记一下。题目大意:输入n,m:n表示有n个城市相连,m表示下面有m行指令。D X表示破坏X这个城市,R表示修复最近一次破坏的城市,Q X表示查询以X点为中心的整体连续中最大的连续个数并输出。线段树怎么解呢?首...原创 2018-07-29 19:06:25 · 248 阅读 · 0 评论 -
HDU - 3974 Assign the task(线段树+dfs序)
题意:给你一个树形结构,两种操作,第一种是把一个结点染色,这个结点的所有子结点都要染成同样的颜色。第二种操作是查询某个结点的颜色。这让我们想到线段树,但是线段树是一维直线的,怎么解决树形结构呢?先介绍一下dfs序,大家都知道dfs搜索顺序,从根结开始不断向叶子结点单向搜索,如果到叶子结点就向上回溯一层,继续向其他子结点搜索。这就造成了一种特性,就是搜索完所有子结点会再回到父结点,再搜完父结点的...原创 2018-07-29 19:51:49 · 153 阅读 · 0 评论 -
HDU - 4578 Transformation(线段树)
异常变态的正常线段树。给你三种操作,三种输出方式:1.让l~r区间的所有值加c;2.让l~r区间的所有值乘c;3.让l~r区间的所有值变成c;4.让l~r区间的所有值都先求p(1~3)次方,然后求和输出。别人都是一看题懵逼好简单操作好复杂,我就比较优秀,一看题就懵逼感觉很难不知道怎么做,我对不起这几天努力学的线段树,对不起。其实我考虑到分三种lazy数组,三种ans数组(正常大...原创 2018-07-29 21:04:58 · 860 阅读 · 0 评论 -
HDU - 4614 Vases and Flowers(线段树+二分)
题意:给你一排花盆,两种操作:第一种从i开始插花,插j朵,遇到有花的花盆就跳过。直到插完j朵花或者后面没有空花盆为止,输出从哪开始插,插到哪结束的区间。第二种是求i~j区间的花的总数,然后把这个区间的花全部拔掉。终于自己手写了一个线段树,虽然花了一上午。其实这道题不难,当时求区间的时候j - i + 1,有一个不小心把+写成了-号,花了半上午,然后忽略了起始位置可能有花的情况,又花了半上午,算...原创 2018-07-30 11:43:31 · 144 阅读 · 0 评论 -
线段树扫描线问题(HDU - 1255 POJ - 1177 HDU 1542等等)
博主真的很厉害,写得非常好,我学到了很多知识,感激博主,我直接转载了这个博客,以后用来做模板。博客转自:https://blog.csdn.net/lwt36/article/details/48908031;HDU 1542 [POJ 1151] Atlantis (矩形面积并) 题意: 求N<=100个矩形的面积并 分析: 离散化: 这些...转载 2018-07-30 16:49:58 · 361 阅读 · 0 评论