纯KMP

 #include <cstdio>
#include <algorithm>
#include <cstring>
#include <ctype.h>
#include <cstdlib>
#include <stack>
#include <set>
#include <map>
#include <queue>
#include <string>
#include <cmath> using namespace std; int M,N,T;
char A[],B[];
int f[]; void getFail(char *P)
{
f[] = ;f[] = ;
for(int i=;i<M;i++)
{
int j = f[i];
while(j && P[i] != P[j]) j = f[j];
f[i+] = P[i] == P[j] ? j+ : ;
}
} int find(char *T,char *P)
{
getFail(P);
int j=;
int ans = ;
for(int i=;i<N;i++)
{
while(j && T[i] != P[j]) j = f[j];
if( T[i] == P[j] ) j++;
if(j == M) {i += M-;ans++;}
}
return ans;
} int main()
{ while( == scanf("%s %s",A,B))
{
N = strlen(A);M = strlen(B);
printf("%d\n",find(A,B));
}
}

最新文章

  1. 使用FIR.im发布自己的移动端APP
  2. TP验证
  3. sqlserver获取表名,字段名
  4. JS浮点数运算BUG破法
  5. 初步认识 Web Service
  6. Android 常用代码大集合 [转]
  7. Microsoft Accelerator for Windows Azure Alum Azuqua 今天启动
  8. php laravel 帧 该文件上传
  9. 基于docker构建jenkins和svn服务(转)
  10. iOS开发中视图控制器ViewControllers之间的数据传递
  11. python爬虫xpath
  12. svn从Windows服务器上迁移到Linux上
  13. mysql实现首字母从A-Z排序
  14. CODEFORCES掉RATING记 #4
  15. IDEA 2017 安装后 关联SVN
  16. 弹出序列(python)
  17. Android SDK目录结构
  18. [Js插件]使用JqueryUI的弹出框做一个“炫”的登录页面
  19. Oracle 分区表(转)
  20. 概率dp学习记录

热门文章

  1. TCP/IP协议---UDP协议
  2. Ionic下的Jpush消息推送与内容显示
  3. Caffe源码中math_functions文件分析
  4. SDP服务搜索流程源码分析
  5. Docker系列学习
  6. Docker容器学习梳理 - 应用程序容器环境部署
  7. box-flex 弹性合布局+WebApp布局自适应
  8. 矩形A + B HDU2524
  9. 2017-2018-2 1723《程序设计与数据结构》实验四 &amp; 实验五 &amp; 课程总结 总结
  10. sql 语句的先后执行顺序