初学OI两周的萌新求助
先考虑一个简单版本,只插入和询问
显然,对于同一个 k ,每次答案单调不下降,因此只需要记录 k 上一次的答案,这次从上开始查找即可
考虑复杂度的正确性,假设我们有 1,2,3,...,n 这个数列,如果想让他们移动次数最多,就需要 1,2,3,4,5..n 这样插入,复杂度即为调和级数,~~~三江方士证明它收敛~~ ,即为 O(nlogn)
那么如果有删除呢,我们只需要考虑当当前这个数字曾经对那些没有产生贡献,显然根据上面的结论,它的因子个数(产生过影响的)也是 O(logn) 级别的,因此依旧大力维护即可。
复杂度即为 O(nlog2n)