摘要:
一眼点分治。 设当前分治中心为 $u$,正在考虑子树 $V$ 的贡献。 则 $\forall v\in V$,此次分治对询问 $v,k$ 的贡献为 $\sum\limits_{i\notin V}[d_i=k-d_v]$。 用桶维护。具体地,先把 $u$ 子树内所有点的深度装进桶里, 考虑 $V$ 阅读全文
摘要:
看来 P8511 的套路还不怎么推广。来点单 $\log$ 做法。 令 $a_i=f(E(1,i))$,则 $E(x,y)=a_x\oplus a_y$。 令 $s_i$ 为 $i$ 子树外 $a$ 的最大异或对,$t_i$ 为 $i$ 子树内 $a$ 的最大异或对。 转化一下问题,求 $\max\ 阅读全文
摘要:
什么时候搞个 P6072 加强版( 先找个全局最大异或对 $x,y$,然后只有 $x,y$ 的祖先的答案不是 $a_x\oplus a_y$,考虑求这一部分答案。 发现从上往下爬树的话,子树外点集是只加不减的,所以每个点最多被加进去一次。 从根分别爬到 $x,y$,01 Trie 维护这个子树外点集 阅读全文
摘要:
HH 的项链の套路。 离线下来,对询问的 $r$ 扫描线,维护 $z_i=\max\{j|i\in[l_j,r_j],j\le r\}$,$d_x=\sum\limits_{z_i=x}v_{z_i}$。 若 $z_i\ge l$,则 $a_i=v_{z_i}$,否则 $a_i=0$,则询问 $l, 阅读全文
摘要:
小清新树剖题。 显然不好直接做,离线下来对 $l$ 扫描线。 时刻保证 $\forall x_i\ge l,s_i=1$,然后每条边的 $s_i$ 只会变化一次。 发现维护的是一个颜色段信息,考虑树剖套线段树。 线段树每个节点上维护前缀 $1$ 的个数,后缀 $1$ 的个数,$1$ 的个数和答案。 阅读全文