manacher算法
来源:互联网 发布:韩国网络双人男女主播 编辑:程序博客网 时间:2024/06/05 05:41
#include <iostream>#include <cstdio>#include <cstring>#include <cmath>#include <cstdlib>#include <algorithm>using namespace std;typedef long long ll;const int maxn=1e5+10;char s0[maxn];char s[maxn<<2];int p[maxn<<2];int main(){#ifdef LOCAL freopen("input.in","r",stdin);// freopen("output.in","w",stdout);#endif scanf("%s",s0); int len= strlen(s0); for(int i=len;i>=1;i--) { s[2*i+1]='#'; s[2*i]=s0[i-1]; } s[0]='@'; s[1]='#';// printf("%s\n",s); int mx=0,id=0,ans=0; len=strlen(s); for(int i=1;i<len;i++) {// cout<<id<<" "<<mx<<" "<<ans<<endl; if(mx>i) p[i]=min(p[id*2-i],mx-i); else p[i]=1; while(s[i+p[i]]==s[i-p[i]]) p[i]+=1; if(mx<p[i]+i) { id=i; mx=p[i]+i; } ans=max(ans,p[i]-1); }// for(int i=0;i<len;i++) printf("%d ",p[i]); printf("%d\n",ans); return 0;}
0 0
- Manacher算法
- Manacher算法
- Manacher算法
- Manacher算法
- Manacher 算法
- manacher算法
- manacher 算法
- Manacher算法
- manacher算法
- manacher算法
- manacher算法
- Manacher 算法
- Manacher算法
- manacher算法
- Manacher算法
- manacher算法
- Manacher算法
- Manacher算法:
- EOJ 3256 拼音魔法 【模拟】
- windows上的TFTP服务器的安装
- JAVASCRIPT设计模式详解之命令模式
- undefined symbol: _ZN10tensorflow8internal21CheckOpMessageBuilder9NewStringEv
- 【转】c#--json序列化与反序列化
- manacher算法
- OpenSSL
- Eclipse 一直Building Workspace 的解决办法
- ubuntu搭建nginx环境
- 单元测试及Junit的学习
- Oracle SQL Developer id自增
- 【Java深入】深拷贝与浅拷贝详解
- Keras中实现模型加载与测试(以mnist为例)
- 有影响力的攻击