有关线段树应用(1)

本篇将详细分享一下我做的线段树题单

P2184 贪婪大陆

我们假设一个区间[l,r],那么对整个区间有贡献的地雷,就是与这个区间有交点的地雷数量,那我们画一下图:

发现规律没有,如果一个地雷区间[x,y]与[l,r]有交点,那么

于是我们线段树上维护一段区间的左端点数和右端点数,于是一个区间的答案即为:

r前面左端点数-l前面右端点数

具体代码放在最后

P1253 扶苏的问题

我们发现这个题有两种修改,所以我们维护两个tag

因为我们发现,如果一个区间的所有数被覆盖了,那么无论之前加多少都没用了,所以赋值标记可以直接覆盖掉加法标记,我们下传pushdown时要注意

具体代码也放在最后

(其实和线段树2差不多)

相关推荐
m0_561359672 小时前
C++模块接口设计
开发语言·c++·算法
wengqidaifeng2 小时前
探索数据结构(二):空间复杂度
c语言·开发语言·数据结构
难得的我们2 小时前
单元测试在C++项目中的实践
开发语言·c++·算法
Once_day2 小时前
代码训练总结(1)算法和数据结构的框架思维
数据结构·算法
鹿角片ljp2 小时前
力扣125.验证回文串-双指针
数据结构·算法
夏乌_Wx2 小时前
练题100天——DAY44:回文链表 ★★☆☆☆
数据结构
We་ct3 小时前
LeetCode 30. 串联所有单词的子串:从暴力到高效,滑动窗口优化详解
前端·算法·leetcode·typescript
-Try hard-3 小时前
数据结构|概念及单向有头链表
数据结构·算法·vim
历程里程碑3 小时前
子串----和为K的子数组
大数据·python·算法·leetcode·elasticsearch·搜索引擎·哈希算法