如题,大致思路就是根号分治,小对小直接建虚树跑,大对大也是预处理用虚树跑,小对大和大对小都是预处理出每个大的中那些点会产生贡献。
可能常数巨大,最后一版使用了 O(nlogn)−O(1)O(nlogn)-O(1)O(nlogn)−O(1) 求LCA把时间复杂度卡进了 O(nlogn+nn)O(nlogn+n\sqrt{n})O(nlogn+nn) 还是只有94。
本题时限8s,不敢再浪费洛谷资源了,求助
代码