国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

hdu 2594

2019-11-08 02:41:08
字體:
來源:轉載
供稿:網友
////  main.cpp//  KMP////  Created by liuzhe on 16/7/16.//  Copyright © 2016年 my_code. All rights reserved.//#include <iostream>#include <algorithm>#include <string>#include <cstring>#include <cstdio>using namespace std;#define Size 50002char s1[Size],s2[Size];int anext[Size];int len1,len2;void get_next(){    int i,j;    i=0;    j=-1;    anext[0]=-1;    while(i<len1)    {        if(j==-1||s1[i]==s1[j])        {            i++;            j++;            anext[i]=j;        }        else            j=anext[j];    }}void kmp(){    int i,j;    i=0;    j=0;    while(i<len2)    {        if(j==-1||s1[j]==s2[i])        {            i++;            j++;        }        else            j=anext[j];    }    if(!j) // 匹配不了        PRintf("%d/n",j);    else    {        for(int k=0;k<j;k++) // 在s1中前j個字符就是共同最長的            printf("%c",s1[k]);        printf(" %d/n",j);    }}int main(){    while(scanf("%s %s",s1,s2)!=EOF) // 題目要求最長的s1的前綴同時滿足是s2的后綴    {        len1=strlen(s1); // 可以反過來想一下,把s2作為主串,s1為子串        len2=strlen(s2); // 然后s1不斷往后移動,匹配之后就可以了        get_next();        kmp();    }    return 0;}
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 探索| 玛曲县| 巴中市| 伊宁市| 扶沟县| 新野县| 公安县| 客服| 扶余县| 汶上县| 桂阳县| 禄丰县| 毕节市| 伊川县| 易门县| 宜章县| 来安县| 松桃| 武宣县| 松潘县| 合川市| 长丰县| 施甸县| 灵台县| 沭阳县| 灌南县| 武强县| 通化市| 清流县| 大洼县| 昌黎县| 肃南| 深水埗区| 武邑县| 灌阳县| 虎林市| 浏阳市| 镇雄县| 钦州市| 宜昌市| 嘉定区|