模拟赛上 T4 一眼鉴定为线段树合并,但是没有学过,所以场上现学现推居然推出来了。
首先,线段树合并要用到动态开点线段树。
线段树合并的主要思想就是:遍历两个线段树,若其中有一个节点为空则直接合并信息,否则继续递归到叶子节点,最后 pushup 进行合并。
这种做法可以很好地合并两个序列或点集的信息,对于两棵满线段树,时间复杂度为 $O(n \log n)$。
所以相当于是一个暴力,代码也不是很难(
不推荐用指针来写,容易把自己转晕,还是写正常的数组模拟动态开点线段树即可。
由于不知道 ymz 让不让公开赛时 T4,所以不放了。
例题:雨天的尾巴