对于一个高维空间的坐标限制,我们称之为 BB 维正交范围问题,我们可以利用扫描线将其降维。也就是说,扫描线维护一维,数据结构维护另一维。

差分处理

如果维护的信息可以差分,那么直接差分掉。比如矩形面积并问题,静态区间内不同数个数问题。将问题转化为矩形操作,然后扫描线维护。

此问题的基础形态是二维数点:平面上有 nn 个点 (i,ai)(i,a_i),每次查询一个矩形内的点的个数。此矩形是一个 4-side 的矩形,可以通过差分的方式将其转化为 3-side,然后再扫描线维护一下变成 2-side,这样就成了一个平凡的单点修改区间查询的问题。

也就是说,差分和扫描线是我们的降维手段,最后一个 2-side 的问题就是平凡的,使用合适的数据结构(区间修改单点查询,单点修改区间查询,区间修改区间查询)维护即可。

这是二维数点的模板,其转化成单点加查询区间和。

矩形面积并

模板。转化成网格图上去做,扫描线扫描矩形的竖线,转化成区间加查询全局 >0>0 的数的个数,因此维护区间最小值(对于全局来说必然是 00)和最小值个数即可,使用动态开点线段树可以很方便地写出来。

[SDOI2009] HH 的项链

二维扫描线

本质上是莫队,不在本文中介绍。


Nothing built can last forever.
本站由 iznomia 使用 Stellar 1.30.4 主题创建。
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议,转载请注明出处。