随笔分类 -  数据结构——线段树

摘要:E - Tunnel Warfare HDU - 1540 区间合并+单点修改,查询最大连续长度 区间修改的线段树实现起来稍微比较麻烦,因为维护两个区间左右延伸的数组。 每次查询的时候,如果该区间是sum[rt]||l==r||sum[rt]==r-l+1,那么返回,否则继续向下查找,因为是单点修改 阅读全文
posted @ 2019-08-01 11:16 Chuhanjing 阅读(129) 评论(0) 推荐(0)
摘要:F - Assign the task HDU - 3974 dfs序线段树 把树形结构变成线性区间结构,树的向下传值变成了这个节点能覆盖的区间的修改。 线段树代码是真的难调,一点小bug就是找不出来,卡了两天。 阅读全文
posted @ 2019-07-31 22:33 Chuhanjing 阅读(146) 评论(0) 推荐(0)
摘要:poj 3667 阅读全文
posted @ 2019-07-30 15:36 Chuhanjing 阅读(184) 评论(0) 推荐(0)
摘要:Can you answer these querites? HDU - 4027 普通的线段树题,但是有一个问题是,区间更新时,因为必须更新每个点,才能更新区间,那么线段树更新就很慢了,无法使用lazy数组。有一个小技巧是当区间和等于区间长度时,那么说明已经到最好的情况了,不用再修改了。这一步简化 阅读全文
posted @ 2019-07-19 22:30 Chuhanjing 阅读(194) 评论(0) 推荐(0)
摘要:区间最值差,线段树维护一个最大值,一个最小值。查询时,max-min就是结果 阅读全文
posted @ 2019-07-17 15:28 Chuhanjing 阅读(186) 评论(0) 推荐(0)
摘要:和上一题的区别在于这个题是对区间染色,上一题是点染色,区间比点少1 对于左右边界a、b,右边界b不变,左边界变为a+1即可 统计区间个数,所以要把每种染色的左右边界记录下来,看是否相连,不相连染色区间数+1 阅读全文
posted @ 2019-07-17 13:03 Chuhanjing 阅读(110) 评论(0) 推荐(0)
摘要:做过的线段树题目大多是,对于整体的数据范围0-m根据给出的点做区间划分,然后再统计数据。 对于m很大的,有些需要离散化 操作的时候分为在线和离线操作 阅读全文
posted @ 2019-07-17 10:36 Chuhanjing 阅读(159) 评论(0) 推荐(0)