摘要: 树链剖分+线段树。线段树每个区间[l,r]维护:m:最大的负数s:所有数字绝对值的和d:正数的个数-负数的个数t:懒惰标记区间修改时,若最大的负数=0,则暴力递归,否则打标记。因为每个负数只会被暴力修改一次,所以时间复杂度为$O(n\log^2n)$。#include#define N 100010... 阅读全文
posted @ 2015-09-05 00:49 Claris 阅读(379) 评论(1) 推荐(0) 编辑
摘要: 树上带修改莫队算法,对于维护mex值,可以使用修改$O(1)$,查询$O(\sqrt{n})$的权值分块,总时间复杂度为$O(n^\frac{5}{3})$。#include#include#define N 50010#define K 15using namespace std;inline v... 阅读全文
posted @ 2015-09-05 00:04 Claris 阅读(552) 评论(0) 推荐(0) 编辑