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

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

/*H E A D*/int nxt[maxn],f[maxn],ans;char T[maxn],P[maxn];void init(){    int m=strlen(P+1);    int j=0;    nxt[1]=0;    rep(i,2,m){        while(j>0&&P[i]!=P[j+1]) j=nxt[j];        if(P[i]==P[j+1])j++;        nxt[i]=j;    }}void match(){    int n=strlen(T+1);    int m=strlen(P+1);    int j=0;    rep(i,1,n){        while(j>0&&(j==m||T[i]!=P[j+1])) j=nxt[j];        if(T[i]==P[j+1]) j++;        f[i]=j;        if(f[i]==m)ans++;    }}int main(){    int t; iin(t);    while(t--){        s1(P); s1(T);        ans=0;        init(); match();        println(ans);    }    return 0;}

转载于:https://www.cnblogs.com/caturra/p/8434008.html

你可能感兴趣的文章
JavaScript 技巧与高级特性
查看>>
Uva 11729 Commando War
查看>>
增强学习(一) ----- 基本概念
查看>>
ubuntu下USB连接Android手机
查看>>
C# 语句 分支语句 switch----case----.
查看>>
反射获取 obj类 的属性 与对应值
查看>>
表单中的readonly与disable的区别(zhuan)
查看>>
win10下安装配置mysql-8.0.13--实战可用
查看>>
周记2018.8.27~9.2
查看>>
MySQL中 1305-FUNCTION liangshanhero2.getdate does not exit 问题解决
查看>>
python序列化和json
查看>>
mongodb
查看>>
SSH-struts2的异常处理
查看>>
《30天自制操作系统》学习笔记--第14天
查看>>
LGPL协议的理解
查看>>
1、Python基础
查看>>
Unity The Tag Attribute Matching Rule
查看>>
试着理解下kvm
查看>>
WebService学习总结(二)--使用JDK开发WebService
查看>>
Tizen参考手机RD-210和RD-PQ
查看>>