站外题求条
查看原帖
站外题求条
943498
wangshenluogu楼主2024/8/13 11:32

题目

#include<iostream>
#include<cstring>
using namespace std;
string a,b,c;
int T,dp[1099][1099],count;
int main(){
	cin>>T;
	while(T--){
		cin>>a>>b>>c;
		memset(dp,0,sizeof(dp));
		cout<<"Data set "<<(++count)<<": ";
		for(int i=1;i<=a.size();i++){
			if(a[i-1]==c[i-1]){
				dp[i][0]=1;
			}else{
				break;
			}
		}
		for(int i=1;i<=b.size();i++){
			if(b[i-1]==c[i-1]){
				dp[0][i]=1;
			}else{
				break;
			}
		}
		dp[0][0]=1;
		for(int i=1;i<a.size();i++){
			for(int j=1;i<b.size();j++){
				if(dp[i][j-1]==1&&a[j-1]==c[i+j-1]){
					dp[i][j]=1;
				}
				if(dp[i-1][j]==1&&b[i-1]==c[i+j-1]){
					dp[i][j]=1;
				}
			}
		}
		if(dp[a.size()-1][b.size()-1]==1){
			cout<<"yes"<<endl;
		}else{
			cout<<"no"<<endl;
		}
	}
	return 0;
}

Runtime Error

2024/8/13 11:32
加载中...