hdu2594Simpsons’ Hidden Talents
2016-07-29 16:14
274 查看
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=2594
给你两个串s1和s2,问你s2的后缀和s1的前缀相等的最长长度
把s2接在s1后面,求出nxt[]数组以后就结束了。。。
注意长度不要超
给你两个串s1和s2,问你s2的后缀和s1的前缀相等的最长长度
把s2接在s1后面,求出nxt[]数组以后就结束了。。。
注意长度不要超
#include <stdio.h> #include<cstring> #include<iostream> #include<cmath> using namespace std; char a[100020]; char b[100020]; int la,lb; int nxt[100020]; void gnx(){ int i=0,j=-1; nxt[0]=-1; while(i<lb){ if(j==-1||b[i]==b[j])nxt[++i]=++j; else j=nxt[j]; } } int main(void) { while(scanf("%s",b)!=EOF){ scanf("%s",a); int la=strlen(b); strcat(b,a); lb=strlen(b); gnx(); int ans=nxt[lb]; while(ans>la||ans>lb-la)ans=nxt[ans]; for(int i=0;i<ans;i++){ printf("%c",b[i]); }if(ans>0)printf(" "); printf("%d\n",ans); } return 0; }
相关文章推荐
- hdu2594Simpsons’ Hidden Talents(kmp)
- hdu2594Simpsons’ Hidden Talents--KMP算法
- hdu2594Simpsons’ Hidden Talents kmp水题
- hdu2594Simpsons’ Hidden Talents(kmp,next)
- hdu2594Simpsons’ Hidden Talents
- hdu 2594Simpsons’ Hidden Talents
- hdu2594-Simpsons’ Hidden Talents
- HDU 2594 Simpsons’ Hidden Talents (KMP)
- HDU2594 Simpsons’ Hidden Talents
- HDU - 2594 Simpsons’ Hidden Talents
- HDU2594 Simpsons’ Hidden Talents KMP
- HDU 2594 Simpsons' Hidden Talents(kmp)
- Simpsons’ Hidden Talents (HDU_2594) KMP
- 【HDU 3746】Simpsons’ Hidden Talents(KMP求循环节)
- hdu2594 Simpsons’ Hidden Talents
- HDU2594 Simpsons’ Hidden Talents(kmp,next的性质)
- HDU 2594 Simpsons’ Hidden Talents(KMP)
- HDU 2594 Simpsons’ Hidden Talents(s1的前缀是s2的后缀)
- HDU 2594 Simpsons’ Hidden Talents (KMP)
- hud 2594 Simpsons’ Hidden Talents