hdu3294回文串
来源:互联网 发布:数据透视表是什么意思 编辑:程序博客网 时间:2024/06/08 02:00
http://acm.hdu.edu.cn/showproblem.php?pid=3294
给出的第一个字符是串里的a
#include <iostream>#include <cstring>#include <cstdio>#include <cmath>using namespace std;const int maxn=1000005;char s[maxn],t[maxn<<1];int Len[maxn<<1];int pos;int init(char *st){ int i,len=strlen(st); t[0]='@';//字符串开头增加一个特殊字符,防止越界 for(i=1;i<=2*len;i+=2) { t[i]='#'; t[i+1]=st[i/2]; } t[2*len+1]='#'; t[2*len+2]='$';//字符串结尾加一个字符,防止越界 t[2*len+3]=0; return 2*len+1;//返回转换字符串的长度}//Manacher算法计算过程int manacher(char *st,int len){ int p=0,ans=0,po=0;//p即为当前计算回文串最右边字符的最大值 for(int i=1;i<=len;i++) { if(p>i) Len[i]=min(p-i,Len[2*po-i]);//在Len[j]和p-i中取个小 else Len[i]=1;//如果i>=p,要从头开始匹配 while(st[i-Len[i]]==st[i+Len[i]]) Len[i]++; if(Len[i]+i>p)//若新计算的回文串右端点位置大于p,要更新po和mx的值 { p=Len[i]+i; po=i; } if(Len[i]>ans) { //ans=Len[i]; pos=i; } ans=max(ans,Len[i]); } return ans-1;//返回Len[i]中的最大值-1即为原串的最长回文子串额长度 }int main(){ char c; while(scanf("%c%s",&c,s)!=-1) { getchar(); init(s); int len=init(s); int ans=manacher(t,len); if(ans>1) { int l,r; if(pos%2==0) { l=pos/2-1-ans/2; r=l+ans-1; } else { l=(pos-ans)/2; r=l+ans-1; } printf("%d %d\n",l,r); //cout<<pos<<endl; int t=c-'a'; for(int i=l;i<=r;i++) { int k=s[i]-t; if(k>=97) printf("%c",s[i]-t); else printf("%c",s[i]-t+26); } printf("\n"); } else printf("No solution!\n"); } return 0;}
0 0
- hdu3294回文串
- hdu3294(找最长回文串)
- hdu3068&&hdu3294,回文串,Manacher算法
- hdu3294 Girls' research (manacher算法,最大回文子串)
- hdu3294 Girls' research 回文字符串
- hdu3068+hdu3294 最长回文字符串的manacher算法
- HDU3294 manacher
- 回文数&&回文串
- HDU3294:Girls' research
- hdu3294之manacher算法
- hdu3294(Manacher算法)
- hdu3294---Girls' research
- 【HDU3294,URAL1294】manacher算法
- 【manacher算法】HDU3294 URAL1297
- HDU3294 Girls' research
- hdu3294(manacher)
- hdu3294 manacher算法
- HDU3294 Girls' research
- Android 开发实战经验总结
- URL格式
- AFX
- springmvc实现文件上传下载
- Android之根据图片的Uri获取对应的路径
- hdu3294回文串
- 动态链接(dynamic link)与静态链接(static link)
- 获取屏幕辅助类
- block注意执行时,所在的线程
- Protostuff序列化
- linux 权限值的表示
- Android动画之AlphaAnimation使用
- RandomAccessFile
- [技术文章搬家]华为oj挑战赛八皇后问题思考