后缀数组学习
canxuezhinuanyang
这个作者很懒,什么都没留下…
展开
-
后缀数组学习和经典题
模板 其中 build_sa,getheight, st_build, query的部分都是将原字符串经过最后一个字符为0的处理后的模板 倍增和D3C两个版本 倍增是 D3C接近 倍增版本 #include<iostream> #include<cstdio> #include<algorithm> #include<cmath> #...原创 2019-08-04 16:11:12 · 136 阅读 · 0 评论 -
BZOJ 4892 DNA (sa+暴力)
给你一个母串 和 一个子串 问母串中有多少个子串更改不超过三个字母 可以和子串相匹配。 做法: 把母串和子串连起来建sa数组 然后 对母串的开头 和子串的开头进行枚举,如果首字母相同则求下一个跳到当前位置+lcp(母串当前位置,子串当前位置) 然后继续往下比较 最多只要跳不超过3次 就可以完成一次 开头的枚举 建sa O(T*nlog(n)) n为母串加子串的长度 暴力 O(T*3*n)...原创 2019-09-16 22:59:39 · 135 阅读 · 0 评论