博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
洛谷 3804 【模板】后缀自动机
阅读量:6854 次
发布时间:2019-06-26

本文共 867 字,大约阅读时间需要 2 分钟。

题目:

学习材料:

     

#include
#include
#include
#define ll long longusing namespace std;const int N=1e6+5,M=N<<1,K=30;int cnt=1,go[M][K],fa[M],siz[M],l[M],lst=1;//=1int tx[N],a[M];char ch[N];ll Mx(ll a,ll b){
return a>b?a:b;}void add(int w){ int p=lst,np=++cnt;lst=np;l[np]=l[p]+1; for(;p&&!go[p][w];p=fa[p])go[p][w]=np; if(!p)fa[np]=1;// 1 not 0 else { int q=go[p][w]; if(l[q]==l[p]+1)fa[np]=q; else { int nq=++cnt; l[nq]=l[p]+1; fa[nq]=fa[q]; fa[q]=nq; fa[np]=nq; memcpy(go[nq],go[q],sizeof go[q]); for(;go[p][w]==q;p=fa[p])go[p][w]=nq; } } siz[np]=1;}int main(){ scanf("%s",ch);int n=strlen(ch); for(int i=0;i
1)ans=Mx(ans,(ll)siz[d]*l[d]); } printf("%lld\n",ans); return 0;}

 

转载于:https://www.cnblogs.com/Narh/p/10106470.html

你可能感兴趣的文章
Github 上 Star 最多的个人 Spring Boot 开源学习项目
查看>>
企业级大数据平台构建
查看>>
0302作业.
查看>>
关于:target与定位动画的奇怪现象
查看>>
linq
查看>>
css设置height 100%
查看>>
数据结构与算法基本学习笔记(5)
查看>>
【2-SAT】【DFS】【分类讨论】Gym - 101617K - Unsatisfying
查看>>
Eclipse+Tomcat+Ant 小记
查看>>
[转载]ubuntu防火墙设置
查看>>
poj3080
查看>>
java-注释、API之字符串(String)
查看>>
jQuery函数attr()和prop()的区别
查看>>
mysql 查询
查看>>
SAS9.4安装
查看>>
UIPageViewController-浅析
查看>>
[vscode] github travis 集成问题
查看>>
课后作业3:软件分析与用户体验分析
查看>>
Mysql空间数据,空间索引,Spatial Data,Spatial Index
查看>>
一周以来工作总结--关于位图索引
查看>>