当前位置: 首页 > news >正文

Manacher 代码贴贴

#include<bits/stdc++.h>
using namespace std;
const int N=1.1e7+5;
char rS[N];
char S[N<<1];
int P[N<<1],n;
void init(){n=strlen(rS);int k=0;S[k++]='$';S[k++]='#';for(int i=0;i<n;i++){S[k++]=rS[i];S[k++]='#';}S[k++]='&';n=k;
}
int manacher(){int ans=1,mx=0,mxid=0;for(int i=1;i<n;i++){if(i<mx)P[i]=min(mx-i,P[2*mxid-i]);else P[i]=1;while(S[i+P[i]]==S[i-P[i]])P[i]++;if(P[i]+i>mx)mx=P[i]+i,mxid=i;ans=max(ans,P[i]);}return ans-1;
}
signed main(){scanf("%s",rS);init();printf("%d",manacher());return 0;
}
http://www.gsyq.cn/news/36259.html

相关文章:

  • P9119 [春季测试 2023] 圣诞树
  • revit api创建文字注释
  • P10674 [MX-S1-T3] 电动力学 题解
  • 读后感一:《代码大全 2》—— 从 “写代码” 到 “做工程” 的思维跃迁 - A
  • JDBC练习
  • 2-SAT学习笔记
  • Java:历久弥坚的编程基石,在变革中永葆活力
  • Ant构建项目 - 沐春风
  • revit api创建风管
  • Java的实战与思想:从代码到架构的工程之美
  • 代码大全2 第四五章
  • 代码大全2阅读2
  • Java的深层逻辑与未来生态延伸
  • Java:从跨平台梦想到生态帝国的编程语言
  • 8、认识for循环
  • node.js安装搭建
  • 102302156 李子贤 数据采集第二次作业
  • 2025年市场上工业线束生产厂家排名前十
  • SVD分解及其应用
  • 完整教程:【C语言数据结构】第2章:线性表(1)--定义ADT
  • 【论道】前端动画总结
  • Mac版4K Video Downloader Plus Pro v1.5.2安装教程|dmg文件下载后拖拽到应用程序教程
  • 把coarse粗调音高转换成频率的数学公式
  • 10.31 —— (VP)2023icpc济南
  • Java流程控制——break,continue,goto
  • 读《代码大全2》第三部分有感
  • 20232324 2025-2026-1 《网络与系统攻防技术》实验四实验报告
  • CF1168C And Reachability
  • 《代码大全》读后感:从 “功能实现者” 到 “责任承担者” 的思维跃迁
  • 企业网站建设服务商:2025年最佳选择指南与行业洞察