【POJ 3461 KMP】

原创 2013年12月02日 21:44:15

题目链接:http://poj.org/problem?id=3461

#include<iostream>
#include<cstdio>
#include<cstring>
using namespace std;
char s1[10005],s2[1000005];
int next[10005];
void getNext(char *p,int *next){
    next[0]=-1;
    int i=0,k=-1,len;
    len=strlen(p);
    while(i<len){
        if(k==-1 || p[i]==p[k]){
            i++;
            k++;
            next[i]=k;
        }
        else
            k=next[k];
    }
}
int Kmp(char *s,char *p,int *next){
    getNext(p,next);
    int i=0,k=0,ans=0,len1,len2;
    len1=strlen(s);
    len2=strlen(p);
    while(i<len1){
        if(k==-1 || s[i]==p[k]){
            i++;
            k++;
        }
        else
            k=next[k];
        if(k==len2){
            ans++;
            k=next[k];
        }
    }
    return ans;
}
int main(){
    int test;
    scanf("%d",&test);
    while(test--){
        scanf("%s",s1);
        scanf("%s",s2);
        printf("%d\n",Kmp(s2,s1,next));
    }
}

poj 3461 KMP模式串匹配

Oulipo Time Limit: 1000MS   Memory Limit: 65536K Total Submissions: 33539   Accepted: 13568 ...
  • liu940204
  • liu940204
  • 2016年05月07日 22:44
  • 476

【哈希&KMP模板题】-POJ-3461-Oulipo

题目链接:http://poj.org/problem?id=3461 题目大意:
  • u013303743
  • u013303743
  • 2014年04月26日 15:54
  • 1182

POJ3461 字符串哈希

#include #include #include #include #include #include #include #include #include #include #include u...
  • u013654696
  • u013654696
  • 2014年02月13日 16:50
  • 534

poj 3461 Oulipo (KMP||hash)

Oulipo Time Limit: 1000MS   Memory Limit: 65536K Total Submissions: 35267   Accepted: 14255 ...
  • yjf3151731373
  • yjf3151731373
  • 2016年08月02日 15:20
  • 109

字符串hash - POJ 3461 Oulipo

Oulipo  Problem's Link ------------------------------------------------------------------...
  • u013371163
  • u013371163
  • 2017年03月05日 17:13
  • 124

poj 3461 字符串单串匹配--KMP或者字符串HASH

http://poj.org/problem?id=3461 先来一发KMP算法: #include #include #include #include #include #inc...
  • u011026968
  • u011026968
  • 2014年08月09日 21:11
  • 976

POJ3461 字符串HASH

#include #include #include #define ull unsigned long long const ull B = 1e8+7; const int MAXN...
  • cnyali
  • cnyali
  • 2015年08月09日 12:38
  • 414

POJ 3461 Oulipo(KMP字符串匹配)

题意  给你两个字符串p和s  求p在s中出现的次数  很裸的kmp 因为不止匹配一次  每次找到后还要循环j=next[j]的过程   知道到达s的终点 #include #include usin...
  • jd503058037
  • jd503058037
  • 2014年08月14日 19:57
  • 851

POJ 3461 - Oulipo(KMP)

Oulipo Time Limit: 1000MS Memory Limit: 65536K Total Submissions: 37038 Accepted: 1495...
  • Snakeflute
  • Snakeflute
  • 2016年10月30日 14:40
  • 84

POJ 3461 Oulipo / KMP

基础KMP 开始学AC自动机了 先搞清楚KMP #include #include using namespace std; const int maxn = 1000010; char a[ma...
  • u011686226
  • u011686226
  • 2014年03月24日 16:09
  • 676
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:【POJ 3461 KMP】
举报原因:
原因补充:

(最多只允许输入30个字)