09 2021 档案
摘要:概述: 参考神犇yyb的博客 问题:如何做到$O(nlogn)-O(1)$复杂度求解$k$次祖先? 常规倍增是$O(nlogn)-O(logn)$的,重链剖分是$O(nlogn)-O(logn)$的,欧拉序st表能在$O(nlogn)-O(1)$复杂度内求两点LCA,但并不能查出k次祖先是谁 长链剖
阅读全文
摘要:正着做着实不太好做,正难则反,考虑反着做。 把i,j看成在切割字符串,我们统计有多少对(i,j)会切割所有与$s_{l,r}$相同的串。对于在后缀自动机上表示$s_{l,r}$的节点x,x的parent子树内的endpos节点集合,就是和$s_{l,r}$相等的串的最后一个字符的出现位置。我们相当于
阅读全文

浙公网安备 33010602011771号