
离线处理
Eirlys_North
这个作者很懒,什么都没留下…
展开
-
bzoj 2743 树状数组+离线处理
题意:n朵花,c种颜色,排成一排。共有m组询问,每个询问给出一个区间[l,r],输出[l,r]中满足个数大于等于2的颜色数蛮经典的思想...首先,我们用膝盖想出了可能用来维护区间的数据结构:树状数组、线段树我们很容易想到一道智障题:输出[l,r]的花朵数,很显然,答案就是(r-l+1),也就是把每朵花赋值为1,维护一个傻乎乎的前缀和当然,我们需要借鉴这种智障的思想回归正题我原创 2017-02-14 10:41:18 · 391 阅读 · 0 评论 -
bzoj 3626 树链剖分+离线处理
题意:给出一个n个节点的有根树(编号为0到n-1,根节点为0)。一个点的深度定义为这个节点到根的距离+1。q个询问,每个询问给出区间[l,r]和z,求在[l,r]区间内的每个节点i与z的最近公共祖先的深度之和好题...orz并不会写题解...const mo=201314;type rec=record l,r:原创 2017-02-27 09:35:05 · 390 阅读 · 0 评论 -
bzoj 1878 树状数组+离线
题意:m组询问,求[l,r]中包含了多少种不同的权值离线+树状数组,还是原来的配方,还是熟悉的呆马...把询问按l从小到大排序,i指针从1到n扫,保证每种权值在[i,r]中第一次出现的位置在树状数组中赋为1,其余位置为0当i与当前询问的l重合时,当前询问的答案为[l,r]的区间和type rec=record l,r,num:longin原创 2017-04-15 22:23:08 · 530 阅读 · 0 评论 -
bzoj 1935 && bzoj 4322 离线+树状数组
题意:给定n个点,多次询问某个矩阵中包含多少点如果暴力二维树状数组的话O(nlogn*logn+mlogn*logn)复杂度原地爆炸那么我们就把二维树状数组通过一些方法变成一维,就能降下去一个log离线处理把所有的询问按照二维树状数组的套路拆成四个,分别把给定点的坐标和拆开后的询问按横坐标排序对于当前询问,把x小于等于这个询问横坐标的点都加入树状数组,在树状数组中询问小于等原创 2017-04-16 14:37:23 · 439 阅读 · 0 评论