kmp算法可参考

kmp算法 汇总

#include <bits/stdc++.h>
using namespace std; const int maxn=1000000+5;
const int maxm=10000+5;
char T[maxn],W[maxm]; void kmp_pre(char x[],int m,int nextp[])
{ //自身与自身进行匹配
int i,j;
i=0;
j=nextp[0]=-1;
while(i<m)
{
while(j!=-1 && x[i]!=x[j]) j=nextp[j];
nextp[++i]=++j;
}
} int nextp[maxm];
int KMP_Count(char x[],int m,char y[],int n)
{ //x是模式串,y是主串
int i,j;
int ans=0;
kmp_pre(x,m,nextp);
i=j=0;
while(i<n)
{
while(j!=-1 && y[i]!=x[j]) j=nextp[j];
i++,j++;
if(j>=m)
{
ans++;
j=nextp[j];
}
}
return ans;
} int main()
{
// freopen("in.txt","r",stdin);
int t;
scanf("%d",&t);
while(t--)
{
scanf("%s%s",W,T);
printf("%d\n",KMP_Count(W,strlen(W),T,strlen(T)));
}
return 0;
}

用cin会超时

最新文章

  1. FastJson的简单实用
  2. ListView遍历每个Item出现NullPointerException的异常
  3. Split Array Largest Sum
  4. c# List Sort排序
  5. STM32随记
  6. 用SQL替换最后一个指定字符后面的所有字符
  7. 开源项目之Android Afinal框架
  8. OpenCV——老照片效果
  9. LeetCode算法题-Rotated Digits(Java实现)
  10. Ch02 课堂作业
  11. spark:ML和MLlib的区别
  12. HttpClient之EntityUtils对象
  13. SQL语句的执行过程
  14. 利用redis完成自动补全搜索功能(三)
  15. HBase学习之路 (八)HBase大牛博客
  16. [转]C结构体之位域(位段)
  17. Pyhton配置CGI
  18. iOS开发 tableView点击下拉扩展 + 内嵌collectionView上传图片效果
  19. SQL Server -&gt;&gt; SQL Server 2016新特性之 -- sp_set_session_context存储过程和SESSION_CONTEXT函数
  20. Hibernate4.3.5搭建Log4j日志环境

热门文章

  1. Linux 操作系统(一)命令&amp;用户&amp;权限
  2. .NET6系列:微软正式宣布Visual Studio 2022
  3. IDEA 配置 Tomcat(详细)(Day_12)
  4. Python数模笔记-Scipy库(1)线性规划问题
  5. MinkowskiPooling池化(下)
  6. 基于TensorRT车辆实时推理优化
  7. 痞子衡嵌入式:嵌入式里通用微秒(microseconds)计时函数框架设计与实现
  8. MapReduce —— MapTask阶段源码分析(Input环节)
  9. 孟老板 ListAdapter封装, 告别Adapter代码 (上)
  10. C#搞跨平台UI,封装Cef作为Cpf的控件支持Windows,Linux,Mac