兔队线段树:楼房重建

本文搬运自本人高中时期CSDN博客,若图片加载不出来,可到原文查看:https://blog.csdn.net/zhangtingxiqwq/article/details/132126096

https://www.luogu.com.cn/problem/P4198

本质:在线段树上每个节点维护信息时再深入到底部,加个 log\log

O(nlog2n)O(n\log^2n) 总比 O(n2)O(n^2) 优。

抽象到本题,就是对于每个线段树节点单独维护只考虑这个区间的答案。

合并的过程,显然左子树可以直接继承,所以可以写个merge计算右子树在存在左子树情况下的贡献。

对于右子树,显然可以分类讨论,必然会递归到其左子树或右子树之一,而另一个可以直接算。

在这里插入图片描述

(侵删)

之前好像做过一道运用此思想的题目,看时候能找到,到时候写一下。