讲解:http://blog.csdn.net/starstar1992/article/details/54913261

#include <bits/stdc++.h>
using namespace std;
char a[],b[];
int nxt[];
void get_nxt(int n)
{
int p=, q=-;
nxt[p]=q;
while(p<n) {
if(q==- || a[p]==a[q])
nxt[p++]=q++;
else q=nxt[q];
}
}
int KMP(int na,int nb)
{
get_nxt(na);
int p=, q=, ans=;
while(p<nb) {
if(q==- || b[p]==a[q])
p++, q++;
else q=nxt[q];
if(q==na-) ans++;
}
return ans;
}
int main()
{
scanf("%s%s",a,b);
int na=strlen(a), nb=strlen(b);
printf("%d",KMP(na,nb));/// a串在b串中出现次数 return ;
}

最新文章

  1. >Python下使用subprocess中文乱码的解决方案
  2. 深入Docker
  3. jquery实现章节目录效果
  4. sql语句执行顺序
  5. p++ ++p
  6. ios应用数据存储方式
  7. mysql分区(partition)
  8. HDU 5366 The mook jong (简单DP)
  9. Django 1.6 最佳实践: 如何设置django项目的设置(settings.py)和部署文件(requirements.txt)
  10. C#实现自定义事件,用于监视变量变化
  11. js阻止冒泡事件及默认操作
  12. SQL的数据类型
  13. QT实现单个EXE文件
  14. 在 JPA、Hibernate 和 Spring 中配置 Ehcache 缓存
  15. 虚拟机设置静态IP配置
  16. [置顶]Python开发之路
  17. Python 文件读取
  18. vue手把手教你实现走马灯商品左右轮播图
  19. Java采用RSA加密及解密技术的有关Maven项目的配置流程:
  20. HDU 6346 整数规划 (最佳完美匹配)

热门文章

  1. 微信小程序无法获取到unionId(专业踩坑20年)
  2. 1.6 USB的插入检测机制
  3. SPOJ VFMUL - Very Fast Multiplication (FFT)
  4. Codeforces 340B - Maximal Area Quadrilateral (计算几何)
  5. 匈牙利算法实战codevs1022覆盖
  6. git的指令的一张很好的图
  7. Berry 指令设计
  8. session之memcache
  9. linux7查看时间同步服务器的匹配源
  10. SOCK_SEQPACKE