HDU1686 kmp算法
来源:互联网 发布:js 字符串寻找子串 编辑:程序博客网 时间:2024/06/06 00:04
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1686
有关kmp算法介绍的链接:
http://blog.csdn.net/u011564456/article/details/20862555?utm_source=tuicool&utm_medium=referral
题意:输入两个字符串,问第一个字符串在第二个在字符串中出现的次数;
思路:由于数据较大使用kmp算法,这题算是kmp算法的模板题;
#include<stdio.h>#include<string.h>char s[10005];char t[1000005];int next[10005];void getnext(int n){ int i=0,j=-1; next[0]=-1; while(i<n) { if(j==-1||s[i]==s[j]) next[++i]=++j; else j=next[j]; }}int kmp(int n,int m){ int i=0,j=0,sum=0; while(i<m) { if(j==-1||s[j]==t[i]) ++i,++j; else j=next[j]; if(j==n) sum++; } return sum;}int main(){ int tt; scanf("%d",&tt); while(tt--) { scanf("%s %s",s,t); int n=strlen(s); int m=strlen(t); getnext(n); int sum=kmp(n,m); printf("%d\n",sum); } return 0;}
新人上路,多多关照;
1 0
- hdu1686 KMP算法
- HDU1686 kmp算法
- hdu1686 KMP算法
- HDU1686:Oulipo KMP算法
- HDU1686 POJ3461 Oulipo KMP算法
- hdu1686之KMP
- hdu1686 Oulipo(KMP)
- hdu1686 KMP裸题
- hdu1686 KMP水题
- hdu1686 oulipo 【KMP】
- HDU1686 Oulipo(扩展KMP)
- hdu1686 Oulipo (KMP)
- hdu1686 Oulipo--KMP
- hdu1686 Oulipo kmp
- HDU1686(KMP)
- hdu1686 Oulipo【kmp】
- HDU1686(KMP多次匹配)
- hdu1686--kmp入门题
- jQuery高级
- 解压gzip格式文件(包括网页)
- 海思3536:PC客户端编译过程报错及解决方法
- 关于蓝桥杯的考生须知和要求
- Spring基于注解配置AOP
- HDU1686 kmp算法
- Android的消息机制——概述
- 2017.3.18【NOIP提高组】模拟赛B组小结
- 连通图-SSL 1758
- POJ1679-The Unique MST
- eclipse上反编译.class文件成java文件(含解决错误)
- 从java层到framework到JNI到HAL到kernel的hello 例子
- 离散题目集合--stl版题解--离散题目3
- iOS 开发中OC 与 JS的交互