题目传送门

马拉车算法模板题。

学习博客

#include<bits/stdc++.h>
#define clr(a,b) memset(a,b,sizeof(a))
using namespace std;
typedef long long ll;
const int maxn=;
char s[maxn<<],ne[maxn<<];
int p[maxn<<],mx,maxx;
int init(){
int len=strlen(s),j=;
ne[]='$';
ne[]='#';
j=;
for(int i=;i<len;i++)
{
ne[j++]=s[i];
ne[j++]='#';
}
ne[j]='\0';
return j;
}
int Manacher(){
int len=init();
int id;
mx=;
for(int i=;i<=len;i++)
{
if(i<mx){
p[i]=min(p[*id-i],mx-i);
}else p[i]=;
while(ne[i-p[i]]==ne[i+p[i]])p[i]++;
if(mx<i+p[i]){
mx=i+p[i];
id=i;
}
maxx=max(maxx,p[i]);
}
return maxx;
}
int main(){
while(scanf("%s",s)!=EOF){
maxx=;
Manacher();
cout<<maxx-<<endl;
}
}

最新文章

  1. 转:聊聊mavenCenter和JCenter
  2. 使用jstack分析cpu消耗过高的问题
  3. C#二维数组
  4. js动态生成input指定My97DatePicker时间问题
  5. 给MySQL官方提交的bug report备忘
  6. 无法打开SQL Server的连接
  7. 深入了解java同步、锁紧机构
  8. php 模式
  9. 3分钟带你了解PowerShell发展历程——PowerShell各版本资料整理
  10. js中防止全局变量被污染的方法
  11. 实战-Mysql5.6.36脚本编译安装及初始化
  12. Mysql取随机数据效率测试(400W条中读取100条)
  13. StringBuffer 和 StringBuilder 的 3 个区别
  14. haproxy负载均衡的安装配置
  15. 采用Extjs MVVM + ThinkPHP 架构开发的思考
  16. IDEA下利用Jrebel插件实现JFinal项目main方法【热加载】
  17. spring集成kafka
  18. [转]【MyBatis】Decimal映射到实体类出现科学计数法问题
  19. delphi WebBrowser的使用方法详解(三)
  20. python之列表【list】

热门文章

  1. Memcached 原理
  2. Topic modeling【经典模型】
  3. 面试题:try,catch,finally都有return语句时执行哪个 已看1
  4. Servlet和JSP简述
  5. python3--装饰器高级学习版
  6. MYSQL优化&mdash;&mdash;索引覆盖
  7. dynamic和匿名类和var的混合使用 没提示照样点
  8. SVN常见问题及解决方式(二)
  9. css总结14:CSS 分页实例
  10. 数据库(学习整理)----7--Oracle导入导出数据库文件