zoukankan      html  css  js  c++  java
  • 两个kmp hdu 2594 & hdu 2087

    #include <stdio.h>
    #include <string.h>
    char a[110000],b[110000];
    int p[110000];
    int main()
    {
        int i,j;
        int y;
        while(scanf("%s",b+1)!=EOF)
        {
            int len=strlen(b+1);
            b[len+1]='X';
            b[len+2]='';
            y=strlen(b+1);
            //printf("%d %d
    ",len,y);
            scanf("%s",a+1);
            strcat(b+1,a+1);
            y=strlen(b+1);
            j=0;
            p[1]=0;
            for(i=2;i<=y;i++)
            {
                while(j>0&&b[i]!=b[j+1]) j=p[j];
                if(b[i]==b[j+1])
                    j++;
                p[i]=j;
            }
            if(p[y]!=0)
            {
                for(i=1;i<=p[y];i++)
                    printf("%c",b[i]);
                printf(" ");
            }
            printf("%d
    ",p[y]);
        }
        return 0;
    }
    
    #include <stdio.h>
    #include <string.h>
    char a[2000],b[2000];
    int p[2000];
    int main()
    {
        int i,j;
        while(1)
        {
            scanf("%s",a+1);
            if(a[1]=='#') break;
            scanf("%s",b+1);
            //puts(b+1);
            int x=strlen(a+1);
            int y=strlen(b+1);
            int sum=0;
            j=0;
            p[1]=0;
            for(i=2;i<=y;i++)
            {
                while(j>0&&b[i]!=b[j+1]) j=p[j];
                if(b[i]==b[j+1])
                    j++;
                p[i]=j;
            }
            j=0;
            for(i=1;i<=x;i++)
            {
                while(j>0&&b[j+1]!=a[i]) j=p[j];
                if(b[j+1]==a[i])
                    j++;
                if(j==y)
                {
                    sum++;
                    j=0;
                }
            }
            printf("%d
    ",sum);
        }
        return 0;
    }
    



     

  • 相关阅读:
    JavaScript脚本的两种放置方式
    对象 属性 事件 方法
    媒体查询
    HTML5布局
    图像
    布局
    列表,表格,表单
    盒子
    vue.js常见面试题及常见命令介绍
    Winform读报工具
  • 原文地址:https://www.cnblogs.com/vermouth/p/3832200.html
Copyright © 2011-2022 走看看