有一棵树,每次操作将一个点染成黑色,每次询问查询一个点最近的黑点有多远。 有两种暴力:
根号分治。对操作序列分块。 对于本块之前的的黑点,把所有修改多源 \(BFS\), 复杂度 \(O(n)\) 对于本块之内的黑点,直接求 \(LCA\) 即可。复杂度 \(O(n)\).
复杂度 \(O(n\sqrt{n})\).