KMP--poj1754
来源:互联网 发布:姚期智回国 知乎 编辑:程序博客网 时间:2024/06/05 03:37
字符串模式匹配,wa了几次,是自己没搞清楚字符串的前缀函数与原来串的位置关系,有待进一步学习
其实这个题还比较简单,写出前缀函数,然后找一下重复子串,出一下就行了,需要注意的是前缀函数中有0,避免做分母。
AC代码:
#include<iostream>#include<cstdio>#include<cstring>using namespace std;char c[1000005];int next[1000005];int main(){ int i,j; int len; while(scanf("%s",c)!=EOF) { getchar(); if(strcmp(c,".")==0) break; next[0]=-1; next[1]=0; int k=0; int len=strlen(c); for(i=2;i<=len;i++) { while(k>=0&&c[k]!=c[i-1]) { k=next[k]; } next[i]=++k; } j=len-next[len]; if(len%j) printf("%d\n",1); else printf("%d\n",len/j); } return 0;}
- KMP--poj1754
- KMP
- KMP
- KMP
- KMP
- KMP
- KMP
- kmp
- kmp
- KMP
- kmp
- KMP
- KMP
- KMP
- kmp
- KMP
- KMP
- kmp
- 关于内存和指针操作,数据类型转换本质的理解
- ShellExecute与ShellExecuteEx的用法
- countif函数的使用方法汇总(excel)
- FlyWeight模式
- 图解数据结构(9)——左偏树
- KMP--poj1754
- ShellExecute
- HDU--1421 -- 搬寝室 [DP] [滚动数组]
- 移动硬盘安装Ubuntu 12.04 LTS
- 栈与堆的区别
- HDU 1131Count the Trees(卡特兰数 大数)
- hibernate的Criteria Query
- 信息域的定义问题
- CSS布局 ——从display,position, float属性谈起