博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
马拉车
阅读量:6870 次
发布时间:2019-06-26

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

相当简单好写,话说这个板子我写了很久了今天懒得再敲直接

1 //马拉车(manacher)算法是求字符串内最大回文子串的算法,时间复杂度为线性 2 #include 
3 #include
4 #include
5 #include
6 #include
7 #include
8 #include
9 #include
10 #include
11 #define N (100000+5)12 #define oo 2147483647 13 using namespace std;14 char a[N],f[N<<1];15 int len[N<<1],slen;16 void init(){17 cin>>a;18 slen=strlen(a);19 f[0]='@';20 for(int i=1;i<=2*slen;i+=2){21 f[i]='#';22 f[i+1]=a[i/2];23 }24 f[2*slen+1]='#';25 f[2*slen+2]='$';26 }27 void manacher(){28 int mx=0,id=0,ans=0;29 for(int i=1;i<=2*slen;i++){30 if(mx>i){31 len[i]=min(mx-i,len[2*id-i]);32 }33 else{34 len[i]=1;35 }36 while(f[i+len[i]]==f[i-len[i]]){37 len[i]++;38 }39 if(mx

 

贴上来吧

转载于:https://www.cnblogs.com/cyz-bhcs/p/6562425.html

你可能感兴趣的文章
C++符号优先级
查看>>
js 倒计时功能源码
查看>>
(转)非常完善的Log4net详细说明
查看>>
C++风格与C风格文件读写效率测试-vs2015,vs2017
查看>>
医道官途
查看>>
(转)C#抽象类和接口对比
查看>>
在树莓派(Raspberry Pi)上编译安装更新版本的Python
查看>>
react 调用 function 的写法 及 解决 react onClick 方法自动执行
查看>>
运行时内存以及垃圾收集器
查看>>
27、通过visual s'tudio 验证 SOCKET编程:搭建一个TCP服务器
查看>>
docker之Dockerfile实践
查看>>
JS堆栈与拷贝
查看>>
P3224 [HNOI2012]永无乡
查看>>
插件就是生产力——那些不能错过的XCode插件们
查看>>
Python打造一个在线G代码生成器
查看>>
ionic开发-怪癖001(http请求 android下无法正常运行)
查看>>
Java实现的基于socket的一次通信
查看>>
Form保存顺序
查看>>
[python]错误检测及异常处理try-except
查看>>
SharePoint 2010 "客户端不支持使用windows资源管理器打开此列表" 解决方法
查看>>