http://poj.org/problem?id=1961

判断某一字符串中 , 哪些前缀子串有周期 , 输出子串长度以及子串中周期重复的次数 ( 次数>1 ) 
需要的只是对KMP性质的进一步理解...代码很短如下
 #include<cstdio>
#include<cstring>
#include<iostream>
#include<algorithm>
#include<cmath>
#include<queue>
using namespace std;
const int maxn=;
const double eps=1e-;
const long long modn=;
char a[maxn]={};
int nex[maxn]={};
int size[maxn]={};
int n,m;
void doit(){
int j=-,i=;
nex[]=-;
int z;
while(i<n){
if(j==-||a[j]==a[i]){
nex[++i]=++j;
if(i%(i-j)==&&i/(i-j)>){
printf("%d %d\n",i,i/(i-j));
}
}else{
j=nex[j];
}
}
}
int main(){
int K=;
while(~scanf("%d",&n)&&n!=){
++K;
memset(nex,,sizeof(nex));
memset(size,,sizeof(size));
scanf("%s",a);
printf("Test case #%d\n",K);
doit();
cout<<endl;
}
return ;
}

最新文章

  1. 在Myeclipse中提交代码到GitHub中
  2. HTML5-格式化
  3. 主机与虚拟机通信:以主机VS2010连接虚拟机MySql为例
  4. 遇到could not find developer disk image 问题怎么解决
  5. PHP和CS的引用传值
  6. js压缩、混淆和加密
  7. 【原】spark-submit提交应用程序的内部流程
  8. 初识 Angular 体会
  9. C# partial修饰符_分部类_分部方法
  10. SQL Server 2012的附件失败,与硬链接的问题
  11. Java内存回收机制.md
  12. python3+requests:使用类封装接口测试脚本
  13. Transactional 事务
  14. poj3107树的重心
  15. ***小程序wx.getUserInfo不能弹出授权窗口后的解决方案
  16. 20135337——Linux内核分析:第十七章 模块与设备
  17. UVA1025 城市里的间谍
  18. js 判断某个元素是否隐藏或显示
  19. python中赋值-浅拷贝-深拷贝之间的关系
  20. java 检查异常 和 非检查异常

热门文章

  1. Django之ModelForm(二)-----ModelForm组件
  2. 29、filter、map、reduce的作用?
  3. Django之组合搜索组件(二)--另附simple_tag的创建使用方法
  4. 绿色的银行类cms管理系统模板——后台
  5. java检验银行卡号
  6. Vue.js 在 webpack 脚手架中使用 cssnext
  7. P-R曲线及与ROC曲线区别
  8. NEO发行资产Token
  9. python requests模块手动设置cookies的几种方式
  10. 华东师范大学第十届ECNU Coder程序设计竞赛