Simpsons’ Hidden Talents (KMP)
来源:互联网 发布:mac word 繁简转换 编辑:程序博客网 时间:2024/06/03 22:54
http://acm.hdu.edu.cn/showproblem.php?pid=2594
题意:求出最长的串长度,该串既是s1的前缀又是s2的后缀.
思路:把两个字符串连起来求一下前缀数组next[]即可~当然要用”#”或者其他非小写字母连接起来防止两个字符串真的混起来,比如s1=”a”,s2=”aaaa”这种情况。
代码出处
#include<iostream>#include<string.h>#include<stdio.h>using namespace std;const int MAXN = 100011;int next[MAXN],Min;char s[MAXN],t[MAXN/2];void makenext(){ int M = strlen(s),i=0,j=-1;next[0]=-1; while(i<M){ if(j==-1||s[i]==s[j])next[++i]=++j; else j = next[j]; }}void solve(){ int i = strlen(s); i = next[i-1]; s[i] = 0; if(i!=0) printf("%s %d\n",s,i); else printf("%d\n",i);}int main(){ while(scanf("%s%s",s,t)!=EOF){ int l; l=strlen(s); s[l]='A';s[l+1]=0; l=strlen(t); t[l]='B';t[l+1]=0; strcat(s,t); makenext(); solve(); } return 0;}
- Simpsons’ Hidden Talents +KMP
- Simpsons’ Hidden Talents (KMP)
- 【KMP】 hdu2594 Simpsons’ Hidden Talents
- hdu2594 Simpsons’ Hidden Talents kmp
- HDU2594 Simpsons’ Hidden Talents 【KMP】
- hdu2594 Simpsons’ Hidden Talents(KMP)
- HDU2594 Simpsons’ Hidden Talents【KMP】
- HDU2594 Simpsons’ Hidden Talents KMP
- HDOJ2594 Simpsons’ Hidden Talents(kmp)
- Simpsons’ Hidden Talents (HDU_2594) KMP
- HDU2594 Simpsons’ Hidden Talents KMP
- Simpsons' Hidden Talents hdu2594 kmp
- HDU 2594 Simpsons’ Hidden Talents(KMP)
- KMP hdu-2594 Simpsons’ Hidden Talents
- HDU 2594 Simpsons’ Hidden Talents KMP
- HDU 2594Simpsons’ Hidden Talents(KMP运用)
- HDU 2594 Simpsons’ Hidden Talents KMP
- hdu 2594 Simpsons’ Hidden Talents(KMP)
- CCNotificationCenter处理消息事件
- Ununtu下载Android源代码
- 插入排序
- UVa 11317 GCD+LCM 欧拉函数log求位数
- 匹配算法(网络摘抄)-KMP
- Simpsons’ Hidden Talents (KMP)
- ASP.NET中Cookie的用法
- struts工作流程及各种文件详解
- oracle DBMS_SYSTEM
- VC2008下使用OpenSSL 1.0.0g(免编译)
- POJ 2528 离散化+线段树染色
- SQL Server性能调优:资源管理之内存管理篇(上)
- java中的ArithmeticException
- servlet跳转页面的方法