若是凉夜已成梦

青春里 总有些事情要努力去做 总有些梦想要拼命去追。


  • 运维

  • 前端

  • 编程

  • 随笔

  • hust-oj

2296: KMP模式匹配 二(串)

发表于 2017-10-06   |   分类于 HUSTOJ   |   阅读次数 1,424

题目描述

输入一个主串和一个子串,用KMP进行匹配,问进行几趟匹配才成功,若没成功,则输出0

输入

输入一个主串和一个子串

输出

匹配的趟数

样例输入

ababcabcacbab
abcac

样例输出

3

参考代码

#include<stdio.h> 
#include<string.h> 
#include<stdlib.h> 
int index(char s[],char t[],int pos) 
{
    int i,j,slen,tlen;
    i=pos;
    j=0;
    slen=strlen(s);
    tlen=strlen(t);
    while(i<slen && j<tlen) 
    {
        if(s[i]==t[j]) 
        {
            i++;
            j++;
        } else 
        {
            i=i-j+1;
            j=0;
        }
    }
    if(j>=tlen)  
            return i-tlen+1;
    return -1;
}
int main() 
{
    char s[80],t[80];
    int i=0,pos=0,flag=0,count=0;
    gets(s);
    gets(t);
    flag=index(s,t,pos);
    if(flag==-1) 
            printf("0n"); 
    else{
         for(i=0;i<flag;i++)
             if(s[i]==t[0])
                 count++;
    }
    printf("%dn",count);
    return 0; 
}

解析

暂无

hustoj

发表评论 取消回复

邮箱地址不会被公开。 必填项已用*标注

*
*


hoxis wechat
著作权归作者所有
站点更新说明
  • 文章目录
  • 站点概览
若是凉夜已成梦

若是凉夜已成梦

青春里 总有些事情要努力去做 总有些梦想要拼命去追。

1904 日志
6 分类
12 标签
RSS
weibo github twitter facebook

友情链接

原站点 Dreams孤独患者 Skip
© 2017 若是凉夜已成梦
Powered by WordPress | 已运行
Theme By NexT.Mist