![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
后缀数组
71kg
这个作者很懒,什么都没留下…
展开
-
后缀数组+lcp+RMQ板子
#include <iostream>#include <cstdio>#include <cstring>#include <algorithm>#include <cmath>#include <queue>#include <vector>using namespace std;#defin...原创 2019-07-13 22:33:24 · 197 阅读 · 0 评论 -
string string string HDU - 6194 (后缀数组+lcp+RMQ)
题目链接:https://cn.vjudge.net/problem/HDU-6194题意:给你一个字符串,让你求出恰好出现k次的子串的个数思路,后缀数组求出sa数组,lcp求出lcp数组,RMQ来查询(线段树也可以)查找的是 按照k的大小为一个区间长度来查询[i, i+k-1],然后还需要减去 至少出现k+1次的子串[i-1, i+k-1] 和[i,i+k],还得加上[i-1...原创 2019-07-13 22:40:28 · 119 阅读 · 0 评论 -
后缀数组详解
转载自:https://blog.csdn.net/yxuanwkeith/article/details/50636898为什么学后缀数组后缀数组是一个比较强大的处理字符串的算法,是有关字符串的基础算法,所以必须掌握。学会后缀自动机(SAM)就不用学后缀数组(SA)了?不,虽然SAM看起来更为强大和全面,但是有些SAM解决不了的问题能被SA解决,只掌握SAM是远远不够的。...转载 2019-07-13 22:46:05 · 211 阅读 · 0 评论 -
ACM-ICPC 2018 焦作赛区网络赛 H. String and Times (后缀数组 or 后缀自动机)
题目链接:https://nanti.jisuanke.com/t/A2018题意:给你一个字符串,设其子串的出现次数位x ,问 A <= x <= B 的子串数目后缀数组求出现的次数大于k的子串的数目,然后用sum[L] - sum[R + 1]即可当然这也是后缀自动机的裸体;#include<bits/stdc++.h>#define l...原创 2019-08-07 00:11:07 · 221 阅读 · 0 评论 -
ural 1297:Palindrome (后缀数组+RMQ)
题目链接:https://cn.vjudge.net/problem/URAL-1297题意:给出一个字符串,求出这个字符串中最长的回文串。如果有多个回文串的长度相等且都是最大,则输出最靠前的那个。思路:先把原字符的逆序串接到原字符串的后面。然后便是从0~~len扫描这个字符串,假设第i个位置是一个回文的中心,然后求出i对应位置的lca的最大值即可。每次枚举时要分奇偶两种情况考虑。...原创 2019-09-03 23:57:34 · 187 阅读 · 0 评论