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

Manacher——最长回文子串问题

P3805 【模板】Manacher

#include<bits/stdc++.h>
using namespace std;
#define IOS ios::sync_with_stdio(0);cout.tie(0);cin.tie(0);
#define endl '\n'
#define int long long 
const int N=11000002;
string s;
char S[3*N];
int n;
int p[3*N];//p[i]:于i的最大回文半径,包含它自己 
void change(){int k=0;S[k++]='$';S[k++]='#';for(int i=0;i<n;i++){S[k++]=s[i];S[k++]='#';}S[k++]='&';n=k;
}
void solve(){cin>>s;n=s.length();change();int r=0,c=0;for(int i=1;i<n;i++){//从1开始 因为:1.避免越界  2.没必要算0 if(i<r){p[i]=min(p[(c<<1)-i],p[c]+c-i);//其中 因为(i+j)/2=c 所以j=2c-1 }else p[i]=1;while(S[i+p[i]]==S[i-p[i]])p[i]++;if(p[i]-1+i>=r){r=p[i]-1+i;c=i;}}int ans=1;for(int i=1;i<n;i++){ans=max(ans,p[i]);//字符串经过处理,变长了一倍,半径刚好就是原长 }cout<<ans-1<<endl;
}
signed main(){IOSsolve();return 0;
}
http://www.gsyq.cn/news/61441.html

相关文章:

  • Tarjan——强连通分量
  • 次短路 dijkstra
  • 优化需求评审流程论LLM与人工审查协同模式
  • 2025年11月少儿编程机构怎么选?家长必藏的口碑推荐指南
  • 【IEEE出版 | EI期刊同步征稿 | 往届已快速成功EI检索】第六届新能源与电气科技国际学术研讨会 (ISNEET 2025)
  • 从开发板到工业核心:迅为RK3576的金属外壳,为何是行业应用的“点睛之笔”?
  • dijkstra——单源最短路径(标准版)
  • 蓝桥杯python基础语法
  • 2025年11月英语学习软件推荐:从零基础到流利口语,最好的学英语软件全攻略
  • 高频电流探头频率响应特性及其影响因素深度分析
  • C++ 基础学习总结:从入门到构建核心认知 - 实践
  • 题解:P14598 [COCI 2025/2026 #2] 搭塔 / Tornjevi
  • 2025年评价高的化工厂清淤机器人高评价厂家推荐榜
  • 2025年质量好的全自动opp束带机最新TOP品牌厂家排行
  • 2025年评价高的衣柜灯热门厂家推荐榜单
  • 2025年口碑好的化工原料烘干机厂家最新权威实力榜
  • 2025年热门的透明封箱胶带厂家最新实力排行
  • 完整教程:基于开源链动2+1模式AI智能名片S2B2C商城小程序的零售流量重构研究
  • 2025年质量好的无极绳煤矿道岔品牌厂家排行榜
  • 2025年比较好的儿童家具拉手厂家最新实力排行
  • go2网线连接
  • ZT9101 无线网卡驱动下载(Windows/Linux/Android)
  • 2025年热门的防爆加热器厂家最新推荐权威榜
  • 2025年知名的耐高温吸盘厂家推荐及选购参考榜
  • 2025年知名的六角不锈钢螺栓TOP实力厂家推荐榜
  • 2025年评价高的沙漏包装亚克力管行业内知名厂家排行榜
  • 2025年优质的psa制氮机厂家选购指南与推荐
  • 2025年知名的马口铁盒厂家推荐及选购指南
  • 2025年口碑好的大米磨面机厂家最新推荐排行榜
  • 2025年比较好的移动餐车小吃车全国热门厂家实力排名