博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
KMP模板
阅读量:5221 次
发布时间:2019-06-14

本文共 755 字,大约阅读时间需要 2 分钟。

比赛时发现憋不出模板啦

这真是伤心 只写2次的东西真心记不住

贴个以前的模板 多敲几遍

POJ 3461 

  1 #include<cstdio>

 2 #include<iostream>
 3 #include<cstring>
 4 
using 
namespace std;
 5 
int T,la,lb;
 6 
char a[
1000000+
1],b[
10000+
1];
 7 
int to[
10000+
1];
 8 
int main()
 9 {
10     scanf(
"
%d
",&T);
11     
while(T--)
12     {
13         scanf(
"
%s %s
",b+
1,a+
1);
14         la=strlen(a+
1),lb=strlen(b+
1);
15  
16         
//
to
17 
        
int j=
0; to[
1]=
0;
18         
for(
int i=
2;i<=lb;i++)
19         {
20             
while(j>
0&&b[j+
1]!=b[i]) j=to[j];
21             
if(b[j+
1]==b[i]) j++;
22             to[i]=j;
23         }
24         
25         
//
 匹配
26 
        
int ans=
0; j=
0;
27         
for(
int i=
1;i<=la;i++)
28         {
29              
while(j>
0&&a[i]!=b[j+
1]) j=to[j];
30              
if(a[i]==b[j+
1]) j++;
31              
if(j==lb) ans++,j=to[j];
32         }
33         
34         printf(
"
%d\n
",ans);
35     }
36  
37     
return 
0;
38 }
39  

转载于:https://www.cnblogs.com/ofsxb/p/5178940.html

你可能感兴趣的文章
Python-String字符串的相关方法
查看>>
《const限定符的使用》
查看>>
strlen,_conntof,sizeof
查看>>
Dubbo剖析-SPI机制
查看>>
试用Jenkins 2 的 Pipeline 项目
查看>>
NFS金陵科技学院
查看>>
tableView异步下载图片/SDWebImage图片缓存原理
查看>>
比较安全的获取站点更目录
查看>>
学习java annotation
查看>>
mysl
查看>>
工作流模式与K2实现- (1)
查看>>
java Random.nextInt()方法
查看>>
Android 使用CheckBox实现多选效果
查看>>
平均值、中值查询(转)
查看>>
[PAT]数字分类
查看>>
博客园安家
查看>>
Python time mktime()方法
查看>>
Python成长之路第二篇(2)_列表元组内置函数用法
查看>>
正反选练习
查看>>
奥运结束,准备开写
查看>>