随笔分类 - 倍增
摘要:FWT 处理的是位运算卷积问题。 其解决的问题是对于长度为 $2^n$ 的数组 $A[0\sim2^n-1],B[0\sim2^n-1]$,求出数组 $C$ 使得其满足: $$C_k=\sum_{i\oplus j=k}A_iB_j$$ 其中 $\oplus$ 是一种位运算,一般为 $\operat
阅读全文
摘要:后缀数组(suffix array)是省选字符串题目中非常重要的算法。 本文将简略讲述其 $O(n\log n)$ 求法,对于时间复杂度更优秀但 not practical 的做法不作提及。 模板 考虑一种字符串比较大小的新方式。 对于长度为 $n$ 的字符串 $s1,s2$,我们考虑先比较其前 $
阅读全文