E-COM-NET
首页
在线工具
Layui镜像站
SUI文档
联系我们
推荐频道
Java
PHP
C++
C
C#
Python
Ruby
go语言
Scala
Servlet
Vue
MySQL
NoSQL
Redis
CSS
Oracle
SQL Server
DB2
HBase
Http
HTML5
Spring
Ajax
Jquery
JavaScript
Json
XML
NodeJs
mybatis
Hibernate
算法
设计模式
shell
数据结构
大数据
JS
消息中间件
正则表达式
Tomcat
SQL
Nginx
Shiro
Maven
Linux
ACM-后缀数组
字符串:KMP Eentend-Kmp 自动机 trie图 trie树 后缀树
后缀数组
duanple.blog.163.com/blog/static/709717672009825004092/涉及到字符串的问题,无外乎这样一些算法和数据结构:自动机KMP算法Extend-KMP后缀树
后缀数组
lyso1
·
2020-09-15 06:16
编程-算法
ACM-
数论-组合(暴力巧妙) 2018C/C++-A幸运数
题意:一些数字,只含有3,5,7的因子,形成一个数列:3,5,7,9,15,21,25,27,35,45,49,63,75,81,105,125....然后给这些数字排序得到不同的次序,即:num[1]=3num[5]=15num[11]=49然后给你num[x]=59084709587505,求x是多少?思路:这个还有个类似的情况是丑数(2,3,5)大家可以看看这个其实数列就3,5,7这三个数字
oliveQ
·
2020-09-14 20:48
算法题解
力扣杯决赛第3题 寻找一个字符串中的最长重复子串(
后缀数组
)
/problems/longest-repeating-substring/参考https://blog.csdn.net/u012114090/article/details/81669021可使用
后缀数组
qq_23204557
·
2020-09-14 14:30
数据结构
后缀数组
的DC3模版【
后缀数组
】
/*之前一直用倍增法,发现有些题目卡倍增法,而DC3却能AC,所以顺便弄了DC3的模版,看以后会不会用到,嗯,就是酱紫提一些注意点:1.MAXN开n的十倍大小;2.dc3(r,sa,n+1,Max+1);r为待后缀处理的数组,sa为存储排名位置的数组,n+1和Max+1都和倍增一样3.calheight(r,sa,n);和倍增一样模版测试题目是SPOJ694/SPOJDISUBSTRDistinc
Joefery
·
2020-09-14 13:17
->
字符串
<-
后缀数组
SPOJ
SPOJ 687 REPEATS Repeats
后缀数组
+ RMQ预处理
题目大意:对于给出的字符串(长度=1,所以对于repetitionnumber为1的只需要找到字典序最小的那个字母即可,那么我们只考虑repetitionnumber>=2的情况,如果每一个循环节的长度为len,那么在原字符串S中,S[i*len]与S[(i+1)*len]一定会被包含在答案的子串当中那么枚举可能的答案的循环节的长度,然后枚举可能的位置,对于每一组可能被包含的位置S[i*len],
Gatevin
·
2020-09-14 04:39
ACM_RMQ
SPOJ
ACM-
字符串-字典树
字典树,也叫trie树,是一种比较实用的数据结构,无论是在ACM竞赛的题目中,还是字符串相关的某些实际应用领域内,它都能发挥巨大的作用。首先来看看字典树的本质是什么。它其实是一棵存储了很多字符串的树,这棵树上的每一条边就是某个或某些字符串中的一个字符,而从根节点到某一个特定节点所经过的一条路径上的所有边组成的就是字典树所保存的某一个字符串。不难看出,字典树就是一颗多叉树,它利用字符串的前缀来建立了
潜水的疯
·
2020-09-14 04:54
CF 504 E —— Misha and LCP on Tree —— 树剖+
后缀数组
题目:http://codeforces.com/contest/504/problem/E快速查询LCP,可以用
后缀数组
,但树上的字符串不是一个序列;所以考虑转化成序列——dfs序!
aodan5477
·
2020-09-14 00:39
SPOJ - SUBLEX
想到子串,我一开始想到的是自动机,虽然
后缀数组
可做此题,但我个人认为
后缀数组
处理子串问题较难。慢慢的,我想既然子串去重了,那么相当于后缀自动机的每一个状态啊,相同的子串在同一个状态里。建立SAM
My_stage
·
2020-09-14 00:12
字符串
SPOJ694&SPOJ705(
后缀数组
)
这俩题一样。。就后者数据范围大些。题目:给定一个字符串,求不相同的子串的个数。每个子串一定是某个后缀的前缀,那么原问题等价于求所有后缀之间的不相同的前缀的个数。从1到n扫一遍,每一个suffix[sa[i]]的贡献为n-sa[i]+1-height[i].(sa[i]的前缀个数-重复个数)#include#include#defineN50010intn,m,rank[N=1;--i)rank[i
Icefox_zhx
·
2020-09-14 00:34
其他oj
SA
ACM-
思维-CF#521div3 B+C+D+E+ (ECR#53div2的C 二分答案)
#521div3https://codeforces.com/contest/1077#53div2-Chttps://codeforces.com/contest/1073/problem/C进入正文521B找到使得101不存在的最少改变序列。就是离线处理这个序列,贪心的遇到101就改掉第二个1为0,然后一直On查找至结束intt;cin>>t;n=0;for(inti=0;i>sumx[i];
oliveQ
·
2020-09-13 19:57
算法题解
Gym - 102302 K - Candies —— 主席树+
后缀数组
Thisway题意:给你一个长度为n的数组,让你取一段子区间使得这个区间里值得和>=L,usingnamespacestd;#definelllonglongconstintN=1e6+10;intwa[N],wb[N],wv[N],we[N],rk[N];intcmp(int*r,inta,intb,intl){returnr[a]==r[b]&&r[a+l]==r[b+l];}voidbuil
天翼之城*
·
2020-09-13 19:37
主席树
后缀数组
后缀树 &
后缀数组
KMP和AC自动机都是对模式串进行预处理,后缀树和
后缀数组
则是对文本串进行预处理。
weixin_30437847
·
2020-09-13 06:27
数据结构与算法
HDU 1403 Longest Common Substrung [
后缀数组
] [LCP] [LCS]
LongestCommonSubstringTimeLimit:4000MSMemoryLimit:32768KB64bitIOFormat:%I64d&%I64uDescriptionGiventwostrings,youhavetotellthelengthoftheLongestCommonSubstringofthem.Forexample:str1=bananastr2=cianaicS
JacquesdeH
·
2020-09-13 05:37
后缀数组
字符串处理
LCP
LCS
根据后缀树LCA计算
后缀数组
及其LCP
本文继续“根据后缀树得出
后缀数组
“的讨论,进一步探讨从后缀树计算
后缀数组
的LCP。
ljsspace
·
2020-09-13 05:01
数据结构和算法
Stringology
后缀数组
【摘要】本文介绍
后缀数组
的基本概念、方法以及应用。
include-LSS
·
2020-09-13 04:52
后缀数组
的自底向上(bottom-up)遍历算法
后缀数组
自底向上遍历等价于后缀树的自底向上遍历。
ljsspace
·
2020-09-12 13:54
Stringology
数据结构和算法
traversal
string
table
list
null
arrays
后缀数组
(入门) Suffix array【基数排序+倍增】
目录参考的相关链接什么是基数排序什么是倍增什么是
后缀数组
模板题[P3809【模板】后缀排序](https://www.luogu.com.cn/problem/P3809)代码参考的相关链接
后缀数组
的构建思想视频
+0呐~
·
2020-09-12 08:21
学习笔记
后缀数组
的使用笔记
主要参考了.罗穗骞《
后缀数组
——处理字符串的有力工具》和许智磊的
后缀数组
,现在能使用罗穗骞的dc3算法和倍增法倍增法模板o(nlgn)intwa[maxn],wb[maxn],wv[maxn],ws[maxn
yc0576
·
2020-09-12 08:04
文本局部敏感哈希-SimHash算法原理
最近在思考大量文本判重的问题,由于文本数据量大,加之文本判重算法,如BF、KMP、最长公共子串、
后缀数组
、字典树、DFA等计算时空复杂度并不适合数据量较大的工业应用场景。
晓风残月xj
·
2020-09-12 08:49
网站后台
模式识别
Poj 3167 Cow Patterns Hdu 4749 Parade Show (KMP大小关系相同匹配+树状数组)
KMP和exKMP先练到这里,接下来计划研究下被虐了一遍又一遍的
后缀数组
。。。昨天再战cet6,这回写作和翻译题简直感人。。。希望这回能过吧。坑爹的考试周又要开始了,希望做题的时间能够得到保证。
时雨晴天
·
2020-09-12 08:08
ACM/ICPC
Regional
KMP
exKMP
字符串
后缀数组
(Suffix Array) 学习笔记
\(\\\)定义介绍一些写法和数组的含义,首先要知道字典序。\(len\):字符串长度\(s\):字符串数组,我们的字符串存储在\(s[0]...s[len-1]\)中。\(suffix(i),i\in[0,len-1]\):表示子串\(s[i]...s[len-1]\),即从\(i\)开始的后缀。加入我们提取出了\(suffix(1)...suffix(len-1)\),将他们按照字典序从小到达
weixin_34310785
·
2020-09-12 07:30
后缀数组
suffix array
倍增算法,时间复杂度O(nlogn)sa从小到大保存相对大小的下标理解LSD,x数组,sa数组chars[maxn];intsa[maxn],t[maxn],t2[maxn],c[maxn],n;voidbuild_sa(intm){//LSD基数排序int*x=t,*y=t2;//x数组保存rank//字串长度为1,即对每个元素的大小排序for(inti=0;i=0;--i)sa[--c[x[i
fa茶
·
2020-09-12 07:19
#
各种模板
acm-
最大公约数/最小公倍数 快速算法
方法一:欧基里德算法:#include#includeusingnamespacestd;intgcd(int,int);intmain(intagrc,char*agvc[]){intm,n;ifstreamcin("a.txt");while(cin>>m>>n){coutb)a-=b;elseb-=a;}returna;}方法二更快:化归思想/*tein算法求最大公约数,和欧基里德算法相比,
秦时明月-cy
·
2020-09-12 07:44
c++
算法
后缀数组
(模版测试中)
倍增法#include#includeconstintN=1e5+5;chars[N];intsa[N],ra[N],wa[N],wb[N],wv[N],ws[N],height[N],next[N],n;boolcmp(constint*f,constint&a,constint&b,constint&j){returnf[a]==f[b]&&f[a+j]==f[b+j];}voidgetSA(
Nightmare004
·
2020-09-12 06:12
数据结构与算法
ACM-
–圆–-HDOJ 1065 --I Think I Need a Houseboat--水
HDOJ题目地址:传送门IThinkINeedaHouseboatTimeLimit:2000/1000MS(Java/Others)MemoryLimit:65536/32768K(Java/Others)TotalSubmission(s):11934AcceptedSubmission(s):3361ProblemDescriptionFredMapperisconsideringpurch
学霸的一天
·
2020-09-12 06:36
ACM算法
ACM水题
suffix_array(
后缀数组
) 学习笔记
没学会正常做法写了一个链表实现的双关键字统计排序,常数差不多大#include#defineN200100usingnamespacestd;intn,SA[N],rnk[N],height[N];charS[N];inlinevoidget_SA(){staticintx[N],y[N],t[N],head[N],nxt[N],p=26;for(intk=1;kn)?0:rnk[i+k];for
hz_826
·
2020-09-12 04:33
解题报告
剑指Offer——JZ51.构造乘积数组【前
后缀数组
】
题目传送门题解区间线性问题,直接考虑前后缀即可分别计算前缀后缀乘积和,即可线性复杂度AC-CodeclassSolution{public:vectormultiply(constvector&A){vectorB(A.size(),1);for(inti=1;i=0;--j){tmp*=A[j+1];B[j]*=tmp;}returnB;}};
nirvana · rebirth
·
2020-09-10 22:07
剑指Offer
【Luogu】P3809后缀排序(
后缀数组
模板)
题目链接今天终于学会了
后缀数组
模板qwq不过只会模板emmmm首先我们有一本蓝书emmmmmm然后看到蓝书221页代码之后我就看不懂了于是请出rqyrqy:一开始那是个对单个字符排序的操作啊c[i]表示值为
weixin_30820151
·
2020-09-10 19:02
数据结构与算法
ACM-
>uva401
#include#include#include#includeusingnamespacestd;charReverse[35]={'A','#','#','#','3','#','#','H','I','L','#','J','M','#','O','#','#','#','2','T','U','V','W','X','Y','5','1','S','E','#','Z','#','#','
Fate_O
·
2020-09-10 18:46
ACM-uva-Running
poj 1743求最长不重叠公共子串
后缀数组
欧液!
pucca
·
2020-09-10 15:49
algorithm
后缀数组
数据结构笔记_总结
(前缀树,字典树)并查集图结构:邻接表邻接矩阵抽象数据结构(高层数据结构):线性表栈,队列集合,映射有序集合,有序映射无需集合,无序映射更多数据结构:双端队列随机队列最大最小队列双向链表循环链表跳跃表
后缀数组
Crownt
·
2020-09-10 14:00
数据结构
后缀数组
学习笔记
学习算法...准备工作中...一直耳闻
后缀数组
的神奇,据说是解答字符串类型题目的神器...故作此文,权作学习笔记...何谓
后缀数组
?
Speknighter
·
2020-09-10 11:19
Algorithm
ACM-
图论-最短路dijsktra poj2253
这题折磨了我一整天,一直撞南墙,疯狂改不同的小地方,再提交,最后,看别人的代码,发现是精度问题!!!!!double(%lf)计算—->float(%f)输出题意:青蛙(单源点)分步跳跃到(终点)每条路(源到终)定义权值为:各个路段中的最大值求所有路中,权值最小的路,输出权值dis[n]模板题,dijsktra;希望好心的英语大佬可以给我说一下,题目中怎么表达是float输出而不是double1.
oliveQ
·
2020-08-26 16:51
算法题解
ACM-
线段树
https://blog.csdn.net/qq_25605637/article/details/46967529
wanf_
·
2020-08-26 13:27
BZOJ3879:SvT(后缀自动机+虚树)
后缀数组
的写法太简单显然了,把后缀按顺序拿出来,只用一个单调栈就可以了,但我并不会…所以就是SAM了。经过一轮求后缀LCP模型在SAM上乱套,发现就是反串建SAM,得到后缀树。
KKiseki
·
2020-08-26 13:42
虚树
后缀自动机
【BZOJ3879】SvT 后缀树+虚树
话说其实
后缀数组
分治能写,当时想shei了。Vn:啊,水题。一看到“后缀”和这数据范围,肯定
后缀数组
、后缀自动机、后缀树走起!然后我们可以轻松构造出来一个后缀树,然后每次询问树形
空灰冰魂
·
2020-08-26 12:54
后缀自动机
后缀树
虚树
后缀数组
分治
[BZOJ3879]SvT(
后缀数组
+单调栈)
题目描述传送门题解求出sa和height把每一组询问的子串按照rank排序,顺序枚举每一个后缀,每一个后缀的贡献就应该为它与它前面的所有后缀的lcp之和维护一个单调递增的栈、栈中每一个元素的数量以及栈中元素和就可以了相同的只算一个unique一下,不好好读题的锅?代码#include#include#include#include#includeusingnamespacestd;#defineL
Clove_unique
·
2020-08-26 11:37
题解
后缀数组
单调栈
bzoj 3879: SvT (
后缀数组
+单调栈)
3879:SvTTimeLimit:30SecMemoryLimit:512MBSubmit:546Solved:219[Submit][Status][Discuss]Description(我并不想告诉你题目名字是什么鬼)有一个长度为n的仅包含小写字母的字符串S,下标范围为[1,n].现在有若干组询问,对于每一个询问,我们给出若干个后缀(以其在S中出现的起始位置来表示),求这些后缀两两之间的L
clover_hxy
·
2020-08-26 11:47
单调栈
后缀数组
高级算法和数据结构(2)
高级数据结构:哈希表、树与二叉树、优先队列与堆、并查集、线段树、树状数组、伸展树、Treap、AVL树、红—黑树、SBT、块状链表与块状树、后缀树与
后缀数组
、树链剖分与动态树等。
desaco
·
2020-08-26 11:40
(高级)算法和数据结构
ACM-
贪心入门:POJ3253 Fence Repair
ACM-
贪心入门:POJ3253FenceRepair中文题意输入输出示例输入示例输出解决思路AC代码为简化文章,原题请直接看原题链接中文题意给你一块长木板,其长度为L,要求将其切割成若干块指定大小的木板
三号室
·
2020-08-25 06:04
贪心
ACM
ACM
贪心算法
哈夫曼树
最小堆
ACM-
贪心入门:POJ3069 Saruman's Army
ACM-
贪心入门:POJ3069Saruman'sArmy中文题意输入输出示例输入示例输出解决思路AC代码为简化文章,原题请直接看原题链接中文题意给定一些点,标记其中的某些点。
三号室
·
2020-08-25 06:04
ACM
贪心
ACM-
贪心入门:字典序最小 POJ3617
ACM-
贪心入门:字典序最小POJ3617中文题意输入输出示例输入示例输出解决思路AC代码为简化文章,原题请直接看原题链接中文题意输入一串字符串,每次从字符串的两端取一个字符,直至取完,构建成一个新的字符串
三号室
·
2020-08-25 06:04
ACM
贪心
后缀数组
,高度数组
后缀数组
:SA[i]表示字典序第i的后缀的开头字母的位置,比如abca,后缀有五个,abca,bca,ca,a,空后缀求
后缀数组
的方法是……类似分治法,类似二分法?
qq_21704477
·
2020-08-25 03:46
acm
后缀数组
专题整理
先介绍一些基本概念:子串在字符串s中,取任意i1,如果h[i-1]≤1,原式显然成立)并且suffix(k+1)和suffix(i)的最长公共前缀是h[i-1]-1,所以suffix(i)和在它前一名的后缀的最长公共前缀至少是h[i-1]-1。具体实现:实现的时候其实没有必要保存h数组,只须按照h[1],h[2],……,h[n]的顺序计算即可。intrank[maxn],height[maxn];
pcrango
·
2020-08-25 03:46
后缀数组
POJ 2774 Long Long Message (
后缀数组
)
题目类型
后缀数组
题目意思问两个最长1e5的字符串的最长公共子串解题方法在第一个字符串后添加一个区别于输入的所有字符的字符(例如'#')后再把第二个字符串添加在后面构成一个新的字符求这个新字符串的height
yunyouxi0
·
2020-08-25 02:09
数据结构
后缀数组
省选算法汇集(持续更新)最后更新2016.2.29
kmp字典树AC自动机
后缀数组
后缀自动机回文串manacher图论相关并查集最短路(Spfa,Dijkstra,Floyd)最小生成树(Kruskal,prim,LCT)网络流(据说SDOI每年都会考,
ws_yzy
·
2020-08-25 00:32
颓废史
BZOJ刷题记录
字符串hash + 二分答案 - 求最长公共子串 --- poj 2774
analyse:前面在学习
后缀数组
的时候已经做过一遍了,但是现在主攻字符串hash,再用字符串hash写一遍。
weixin_33875839
·
2020-08-24 23:06
后缀数组
(不可重叠重复子串)poj1743
思路:二分答案,然后遍历height数组,看能不能找到符合条件的我写的一直wa,求大神指导#include#include#include#include#include#include#include#include#include#include#includeusingnamespacestd;constintmaxn=20010;constintINF=10000000;intn,x[ma
u010660276
·
2020-08-24 23:03
后缀数组
字符串
字符串学习笔记
-03)Hash方法扩展代码实现KMP前缀函数算法流程代码实现应用查询文本中的某个单词统计每个前缀的出现次数(未学习)扩展KMP(未学习)Trie(未学习)AC自动机失配指针算法流程(待完善)代码实现
后缀数组
Johnson_sky
·
2020-08-24 22:32
ACM
POJ 2406 Power Strings 【
后缀数组
||KMP】
PowerStringsTimeLimit:3000MSMemoryLimit:65536KTotalSubmissions:51298Accepted:21420DescriptionGiventwostringsaandbwedefinea*btobetheirconcatenation.Forexample,ifa="abc"andb="def"thena*b="abcdef".Ifweth
Dust_Heart
·
2020-08-24 22:45
KMP匹配
Manacher算法
后缀数组
POJ
上一页
1
2
3
4
5
6
7
8
下一页
按字母分类:
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
P
Q
R
S
T
U
V
W
X
Y
Z
其他