摘要: 维护区间的线段树 线段树主要就是在在PushUp和Query的时候注意怎么合并左右区间的信息就可以了。对于延迟标记的互相影响完全就是自己跟自己过不去,假如有多种延迟标记的话不妨在访问到一个区间时全部下推(只需要注意叶子层是不能下推的),从其他部分把常数补回来就可以了。 例1 维护加法和(修改:单点加 阅读全文
posted @ 2019-11-17 17:06 KisekiPurin2019 阅读(182) 评论(0) 推荐(0) 编辑
摘要: 并查集的英文名理论上是 disjoint set data structure (also called union–find data structure or merge–find set) 。所以说“并查集”这个词的来源,是其第二个和第三个英文名。 确定两个元素属于同一个集合需要Find找出他 阅读全文
posted @ 2019-11-17 14:08 KisekiPurin2019 阅读(239) 评论(0) 推荐(0) 编辑
摘要: A Single Push 题意:给数组a和数组b,可以选择一段连续的区间[l,r]使得ai全部加k(k 0)至多一次。求能不能从a变成b。 题解:一开始作差排序去重,然后判断差是不是只有1个(且 =0)或只有两个(且c1=0,c2 0),但这样是错的,比如下面的样例。 因为虽然差都是1但不是连续的 阅读全文
posted @ 2019-11-17 11:57 KisekiPurin2019 阅读(194) 评论(0) 推荐(0) 编辑