博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
【kmp算法】poj2406 Power Strings
阅读量:6080 次
发布时间:2019-06-20

本文共 776 字,大约阅读时间需要 2 分钟。

如果next[n]<n/2,一定无解。

否则,必须要满足n mod (n-next[n]) = 0 才行,此时,由于next数组的性质,0~n-next[n]-1的部分一定是最小循环节。

[ab ababababab ab]

#include
#include
using namespace std;char s[1000010];int next[1000010];void GetFail(char P[],int next[])//next[i]表示s[0]~s[i-1]的前缀中,最大相等的前后缀的长度是多少{ next[0]=-1; int len=strlen(P); for(int i=0;i
=0&&P[i]!=P[j]) j=next[j]; if(j!=-1 && P[i]==P[j]) next[i+1]=j+1; else next[i+1]=0; }}int main(){ //freopen("poj2406.in","r",stdin); while(1) { scanf("%s",s); int n=strlen(s); if(s[0]=='.' && n==1) break; GetFail(s,next); printf("%d\n",n%(n-next[n])==0 ? n/(n-next[n]) : 1); } return 0;}

转载于:https://www.cnblogs.com/autsky-jadek/p/6414967.html

你可能感兴趣的文章
php无限极分类
查看>>
mysql数据库入门、进阶和提升(续一)
查看>>
Windows网络连接指示器,NCSI
查看>>
Android——Shape详解
查看>>
高性能专业上网行为管理设备WSG-500E开箱评测
查看>>
Win10中启用Linux Bash
查看>>
读【深度探索C++对象模型】【下】
查看>>
互引头文件的一种解决策略
查看>>
http://blog.51cto.com/itsoul/2047041
查看>>
发明了互联网和AI的美军机构长文预测:人类正与机器合二为一
查看>>
rhel7 http实例
查看>>
PHP获取远程图片并调整图像大小(转)
查看>>
sysstat 安装
查看>>
大型网站运维管理特点介绍
查看>>
命令历史与别名
查看>>
Ubuntu下开启Apache重写扩展
查看>>
马哥2016全新Linux+Python高端运维班-Iptables 防火墙基础练习,tcp_wrapper
查看>>
Linux中如何搭建本地yum源
查看>>
[Lab8]BGP
查看>>
Linux中的帮助功能
查看>>