【题解】P4632 [APIO2018] 新家

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

对时间维扫描线,这样变成动态加入删除商店。
考虑二分答案 \(d\),相当于检测 \([l-d,l+d]\) 这个区间内是否包含了当前所有的颜色。
考虑一个颜色相邻的两个商店 \(x,y\),那么若 \([L,R]\subseteq (x,y)\)\([L,R]\) 不包含所有的颜色。
在动态加入删除商店的时候维护所有的 \((x,y)\) 二元组,那么找到 \(x<L\) 中是否存在 \(R<y\) 即可,也就是维护前缀最大值。
这个可以 1log 维护,再加上二分的复杂度整个题就是 2log。

posted @ 2026-09-04 15:23  TallBanana  阅读(6)  评论(1)    收藏  举报