思路:
找到两个字符串的最大公共字符串的长度,然后用这两个字符串的长度的和 - 2*最长公共字符串的长度。
样例:
Example
inputCopy
5
a
a
abcd
bc
hello
codeforces
hello
helo
dhjakjsnasjhfksafasd
adjsnasjhfksvdafdser
outputCopy
0
2
13
3
20
#include <iostream>
#include <cstring>
using namespace std;
int t;
string a,b;
int main(int argc, char** argv) {
scanf("%d",&t);
while(t--){
cin>>a;
cin>>b;
int cnt=0;
int Max=0;
int i=0,j=0;
int lena=a.size();
int lenb=b.size();
for(int i=0;i<lena;i++){
for(int j=0;j<lenb;j++){
int start1=i;
int start2=j;
int num=0;
while(start1<lena&&start2<lenb&&a[start1]==b[start2]){
start1++;
start2++;
num++;
}
Max=max(Max,num);
}
}
//Max是最长字符串的长度
printf("%d\n",lena+lenb-Max*2);
}
return 0;
}