#include<iostream>
#include<cstring>
#include<algorithm>
using namespace std;
string a,b,c;
int T,dp[2099][2099],cnt;
int main(){
ios::sync_with_stdio(false);
cin.tie(0);cout.tie(0);
cin>>T;
while(T--){
cin>>a>>b>>c;
memset(dp,0,sizeof(dp));
cout<<"Data set "<<(++cnt)<<": ";
int la=a.size(),lb=b.size();
for(int i=1;i<=la;i++){
if(a[i-1]==c[i-1]){
dp[i-1][0]=1;
}else{
break;
}
}
for(int i=1;i<=lb;i++){
if(b[i-1]==c[i-1]){
dp[0][i-1]=1;
}else{
break;
}
}
dp[0][0]=1;
for(int i=1;i<=la;i++){
for(int j=1;j<=lb;j++){
if(dp[i][j-1]==1&&a[j-1]==c[i+j-1]){
dp[i-1][j-1]=1;
}
if(dp[i-1][j]==1&&b[i-1]==c[i+j-1]){
dp[i-1][j-1]=1;
}
}
}
if(dp[la-1][lb-1]==1){
cout<<"yes"<<endl;
}else{
cout<<"no"<<endl;
}
}
return 0;
}
错误信息:Time Limit Exceeded