题解 P8427 [COCI2020] Paint
令 $n=RS$。
合并操作可以启发式合并,好像做完了?
仔细一想发现不太对,因为每次找相邻的连通块是 $O(siz)$ 的,这样对于 $siz$ 特别大时复杂度会退化,所以复杂度瓶颈是在找颜色相同的相邻连通块。
考虑根号分治,设阈值为 $B$。
对于 $siz<B$ 的连通块直接暴力把每个点相邻连通块找出来,$O(nB)$。
对于 $siz\ge B$ 的连通块,最多只有 $\frac{n}{B}$ 个连通块,直接维护每个大块的每种颜色的相邻连通块,最多只有 $n$ 个相邻连通块,总共是 $O(\frac{n^2}{B})$ 的。
取 $B=\sqrt n$,时间 $O(n\log n+q\sqrt n)$,空间 $O(n\sqrt n)$。

浙公网安备 33010602011771号