
树状数组
sadnohappy
这个作者很懒,什么都没留下…
展开
-
【JZOJ4711】Binary
【JZOJ4711】Binary题解原创 2016-08-17 21:06:06 · 599 阅读 · 1 评论 -
【JZOJ6030】白白的
DescriptionSolution单点修改操作:树状数组套线段树。分裂操作:类似启发式那样求跨越分裂点的逆序对数。还有就是注意求的是异或和。Code#pragma GCC optimize("Ofast,no-stack-protector,unroll-loops,fast-math")#pragma GCC target("sse,sse2,sse3,ssse3,sse4....原创 2019-02-25 16:47:43 · 264 阅读 · 0 评论 -
【JZOJ5924】Queue
Description给一个序列,支持区间轮换(即末尾的一个数挪到开头),查询区间等于k的有多少个。Solution分块,记si,js_{i,j}si,j为第iii块jjj出现的次数,每个块维护一个链表,修改就是对O(n)O(\sqrt n)O(n)的块进行修改,用deque实现非常方便。当然也可以打非旋转Treap,每个点维护权值线段树,合并的时候向上线段树合并。也有离线做法,先用...原创 2018-10-24 21:51:53 · 238 阅读 · 0 评论 -
【JZOJ5918】Car
Description树上有m条链,Q次询问,每次问一条路径最少被多少条链覆盖。Solution还是比较套路的题,求出fi,jf_{i,j}fi,j表示iii点经过2j2^j2j条链到达深度最小的点,先考虑fi,0f_{i,0}fi,0怎么求,对于一条链,我们在它两个端点处更新fi,0f_{i,0}fi,0为它们的lcalcalca,然后每个fi,0f_{i,0}fi,0都可以被它的...原创 2018-10-21 22:05:24 · 188 阅读 · 0 评论 -
【JZOJ5783】树
Description一棵树,支持换根,给u,v的lca的子树的所有结点加上一个权值x,维护子树和。Solution把树放到dfs序上,我们不用真的换根,只要记录根的位置。如果根在lca子树外不会有影响,在lca子树内就找到根到lca路径上深度比lca大1的点,除了这个点往下的子树其它都要修改,在dfs序上就是至多两段区间的修改。注意常数。Code#include&...原创 2018-08-09 21:57:58 · 226 阅读 · 0 评论 -
【51nod1592】数列积
Description小明有一个含有n个数的数列 a1,a2,⋯,ana1,a2,⋯,ana_1,a_2,\cdots,a_n 。 他定义一个数列的积为∑ni=1∑nj=i|ai−aj|∗(j−i)∑i=1n∑j=in|ai−aj|∗(j−i)\sum_{i=1}^n\sum_{j=i}^n|a_i-a_j|*(j-i)。 他发现算出数列积实际上非常简单。因此他现在有了一个绝妙的主意。 ...原创 2018-06-03 21:23:57 · 484 阅读 · 0 评论 -
【JZOJ3976】Cirno的忧郁
DescriptionCirno闲着无事的时候喜欢冰冻青蛙。 Cirno每次从雾之湖中固定的n个结点中选出一些点构成一个简单多边形,Cirno运用自己的能力能将此多边形内所有青蛙冰冻。 雾之湖生活着m只青蛙,青蛙有大有小,所以每只青蛙的价值为一个不大于10000的正整数。 Cirno很想知道每次冻住的青蛙的价值总和。因为智商有限,Cirno将这个问题交给完美算术教室里的你。 因为爱护动原创 2018-01-05 21:54:05 · 672 阅读 · 0 评论 -
【JZOJ5512】送你一棵圣诞树
Description一棵 n 个点的树, 树根为 1. 一开始每个点上有一个 1…n 的颜色 ci, 不同点颜色可以相同. 现在有 q 次操作, 分为两种类型: - 1 u l r: 询问子树 u 中有多少种在 l 到 r 之间的颜色至少出现了一次 - 2 u c: 将 u 的颜色修改为 c 强制在线原创 2018-01-11 16:07:10 · 683 阅读 · 0 评论 -
【51nod1290】Counting Diff Pairs
Description一个长度为N的正整数数组A,给出一个数K以及Q个查询,每个查询包含2个数l和r,对于每个查询输出从A[i]到A[j]中,有多少对数,abs(A[i] - A[j]) <= K(abs表示绝对值)。 2 <= N <= 50000,0 <= K <= 10^9,1 <= Q <= 50000,1 <= A[i] <= 10^9原创 2017-12-15 22:32:37 · 302 阅读 · 0 评论 -
【BZOJ4548】小奇的糖果
Description有 N 个彩色糖果在平面上。小奇想在平面上取一条水平的线段,并拾起它上方或下方的所有糖果。求出最多能够拾起多少糖果,使得获得的糖果并不包含所有的颜色。原创 2017-07-14 21:35:13 · 719 阅读 · 0 评论 -
【JZOJ4920】降雷皇
降雷皇哈蒙很喜欢雷电,他想找到神奇的电光。哈蒙有n条导线排成一排,每条导线有一个电阻值,神奇的电光只能从一根导线传到电阻比它大的上面,而且必须从左边向右传导,当然导线不必是连续的。哈蒙想知道电光最多能通过多少条导线,还想知道这样的方案有多少。原创 2016-12-12 19:27:02 · 735 阅读 · 0 评论 -
【JZOJ6074】铁路
DescriptionSolution首先列车可能会在边中点相交,给每条边上加一个点,变成求点相交的对数。考虑如何不计算重,先固定根,我们统计两条向上走第一次相交的对数,还有一条向上一条向下的对数。两条向上可以用线段树(启发式)合并求,就是在起点打加当前深度标记,lca处打减标记,自下往上深度相同时算一下即可。至于向上向下的有些难处理,考虑链剖,在每一条重链上打标记,具体就是对于一条重链...原创 2019-03-21 14:55:36 · 284 阅读 · 0 评论