摘要:
原题链接 题意: 给定一个序列,求不相交的长度相同子串中, 满足对应位置之差为同一值的子串对数。 提供一种 \(\text{SAM+dsu on tree}\) 的解法。 首先,子串对应位置差为定值,可以将原序列差分后,转化为查询不相交也不相邻的子串对数。 把字符串扔到 \(\text{parent 阅读全文
摘要:
原题链接 题意: 给定一棵树,每个点到其父亲距离为 \(s_i\)。 每个点能从到此点距离不超过 \(l_i\) 的祖先跳过来。 代价是 \(d\times p_i+q_i\),其中 \(d\) 为到祖先的距离。 求每个点从根节点跳过来的最小代价 \(f_i\)。 \(n\leq 2\times 1 阅读全文
摘要:
题目链接 题意: 给定一张完全图,每两个点 \((i,j)\) 之间有三种边 \(A_{(i,j)},B_{(i,j)},C_{(i,j)}\) 。 其中 \(A_{(i,j)}=a_i\operatorname{xor} a_j,B{(i,j)}=b_i\operatorname{xor} b_j 阅读全文
摘要:
原题链接 题意:给定一棵树,每个点有连个值 \(a,b\) 。 每次可以从一个点 \(x\) 到其子树内一点 \(y\) 的代价为 \(a_x\times b_y\)。 求每个到其子树内任一叶子结点的最小代价。 \(n,|a_i|,|b_i|\leq 10^5\) 设 \(f_x\) 为 \(x\) 阅读全文
摘要:
原题链接 题意 给出一个序列 \(a_{1\dots n},b_{1\dots n}\), 每次查询给出一段区间 \(l,r\) 以及两个数 \(c,d\), 问区间 \([l,r]\) 内有多少个数满足 \(a_i\operatorname{xor}c\leq \min(b_i,d)\)。 太久没 阅读全文
摘要:
静态链分治,另称 \(\text{dsu on tree}\) ,是一种维护子树信息的强大工具。 但实际上它能做的并不局限于子树信息; 问题引入: 给定一棵树,每个点有三个权值 \(a_i,b_i,c_i\) 对每个 \(i\) 求 \(w_i=\Big|\big\{j|a_j+b_{\operat 阅读全文
摘要:
原题链接 题意: 对求出无序子串对 \((S[l1\dots r1],S[l2\dots r2])\) 的个数, 满足 \(S[l1\dots r1]=S[l2\dots r2]\) 且 \(L\leq a_{r1} \operatorname{xor} a_{r2}+r1-l1+1\leq R\) 阅读全文
摘要:
原题链接 题意: 给定一张无向连通图,每次询问时保留边权 \(\geq t\) 的边,并对这张图进行如下操作: 从小到大枚举每个点 \(i\) ,若其度数为 \(0\) 直接删去。 若其度数为 \(2\) ,则找出连向 \(i\) 的点 \(u,v\)(可能相同),并删去点 \(i\) 以及连向 \ 阅读全文
摘要:
原题链接 题意:给定一个字符串,每次询问一段区间中出现两次的最长子串长度。 思路还较清新,先将询问按右端点 \(r\) 排序,看对每个询问 \(l\) 能怎么方便求出。 将每个 \([1,r]\) 内的子串 \(p\) ,其在 \([1,r]\) 中次后出现的位置的右端点与左端点看做一条线段 \([ 阅读全文
摘要:
题目链接 题意:给定一张无向连通图,每次给出一些边,询问这些边能否同时在一个最小生成树中出现。 先建出任意一个最小生成树,对树上与非树上的边讨论。 首先,如果询问的边会构成一个环,那就完全不可能在同一最小生成树中。 其次,考虑一条非树边 \((x,y,w)\) 什么时候能替换一条在原先最小生成树上的 阅读全文