kmp 模板
来源:互联网 发布:打码识别软件 编辑:程序博客网 时间:2024/05/18 08:31
#include<bits/stdc++.h>using namespace std;const int maxn=1e6+5;int t,cnt,_next[maxn];char s[maxn],a[maxn];void get_next(char *s,int n){ int i=0,j=-1; _next[0]=-1; while(i<n) { while(j!=-1&&s[i]!=s[j]) j=_next[j]; i++; j++; if(j>=n) _next[i]=_next[j-1]; else _next[i]=j; }}void kmp(char *a,int n,char *s,int m){ cnt=0; get_next(s,m); int i=0,j=0; while(i<n) { while(j!=-1&&a[i]!=s[j]) j=_next[j]; i++; j++; if(j>=m) { j=_next[j]; cnt++; } } printf("%d\n",cnt);}int main(){scanf("%d",&t);while(t--&&scanf("%s%s",s,a)!=EOF) kmp(a,strlen(a),s,strlen(s));return 0;}
阅读全文
0 0
- KMP模板
- KMP 模板
- kmp模板
- kmp模板
- kmp模板
- KMP模板
- kmp模板
- kmp模板
- KMP 模板
- 【模板】KMP
- KMP模板
- KMP模板
- 【KMP 模板】
- KMP模板
- KMP 模板
- kmp模板
- KMP模板
- KMP 模板
- [JavaScript][AJAX][JQuery]利用回调接口封装AJAX类|原生JavaScript的AJAX写法优化
- 关于html二三事
- 【Linux环境配置】安装JDK
- Angular 动画
- 《维特根斯坦—天才之为责任》读书笔记 -- Tell them I've had a wonderful life
- kmp 模板
- 图像分割单词
- 闰年
- C++事务型内存技术规范:第1章(英文)
- Kotlin学习笔记(3)-when
- 二叉树的遍历规则
- JSP:Java Server Page(1)
- 放大器的作用随谈
- MySQL查询语句练习题45题版