POJ 2192 Zipper G++
程序员文章站
2022-07-15 10:52:56
...
#include <iostream>
#include <string>
#include <cstring>
using namespace std;
//dfs没实现 需复习 没掌握
int dp[500][500];
int main()
{
int T;
cin>>T;
for(int o=1;o<=T;o++)
{
memset(dp,0,sizeof(dp));
string a,b,c;
cin>>a>>b>>c;
int i,j;
//dp[0][0]=1;//用不到
for(int i=0;i<a.size();i++)//抄博友
{
if(c[i]==a[i])
{
dp[i+1][0]=1;
}else
{
break;
}
}
for(int i=0;i<b.size();i++)//抄博友
{
if(c[i]==b[i])//抄博友
{
dp[0][i+1]=1;
}else
{
break;
}
}
for(int i=1;i<=a.size();i++)
{
for(int j=1;j<=b.size();j++)
{
if(c[i+j-1]==a[i-1])
{
dp[i][j]=max(dp[i][j],dp[i-1][j]);
}
if(c[i+j-1]==b[j-1])//抄博友
{
dp[i][j]=max(dp[i][j],dp[i][j-1]);
}
}
}
if(dp[a.size()][b.size()]==0)
{
cout<<"Data set "<<o<<": no"<<endl;
}else
{
cout<<"Data set "<<o<<": yes"<<endl;
}
}
return 0;
}
推荐阅读
-
POJ 3600 Subimage Recognition G++ dfs 巧妙 没掌握
-
POJ 1365 Prime Land G++ 处理输入巧妙
-
POJ 1358 Housing Complexes G++ 二分图匹配 没掌握
-
POJ 1388 Hinge Node Problem G++ floyd扩展 背
-
POJ 1321 棋盘问题 G++
-
POJ 1376 Robot G++
-
POJ 1789 Truck History G++
-
POJ 1708 Game G++ 巧妙 bfs 没掌握
-
POJ 1730 Perfect Pth Powers G++ pow未实现 素数+gcd实现 巧妙
-
POJ 1799 Yeehaa! G++ 几何 背