P11982 题解
dAniel_lele · · 题解
根号重构,把所有修改了的点先拉出来,称之为特殊点。以下假设
对于剩余点,我们发现可能满足(假定所有修改了的点
思考一个特殊点会对这些
接下来考虑特殊点与非特殊点之间的符合要求二元组该如何统计。使用 priority_queue 提前计算出每个特殊点取每个值时在非特殊点的前驱后继,复杂度
对于特殊点之间的,每次询问时使用单调栈单独跑一遍。注意特殊点实际上前一个比他大的位置是特殊点和非特殊点的前驱位置较大的那个,后继同理。这一部分计算
总复杂度