描述
设有集合A和集合B,求A∩B的最长子集。
输入
A:asdfghjkla
B:wesdfghjeteya
A:I likeyou!
B:Realy,but I like your hat.It’s cool!
输出
sdfghj
I like you
输入样例 1
Hi,those are yours.
Un,no,those arn’t mine.
输出样例 1
,those ar
方法同找最长子串
#include<stdio.h>
#include<string.h>
int main(){
char s1[100],s2[100];
gets(s1);
scanf("\n");
gets(s2);
int i,j,k;
int max = 0;
int start = 0;
int len;
for(i=0;i<strlen(s1);i++){
for(j=0;j<strlen(s2);j++){
len = 0;
if(s1[i]==s2[j]){
int a,b;
for(a=i,b=j;a<strlen(s1)&&b<strlen(s2);a++,b++){
if(s1[a]==s2[b]){
len++;
}else{
break;
}
}
}
if(len>max){
max = len;
start = i;
}
}
}
for(k=start;k<start+max;k++){
printf("%c",s1[k]);
}
}