【POJ2250】Compromise (最长公共子序列,DP)

POJ上边一直WA啊,找N久N久,找不到错误,看到的人求教育我啊。、。。。。

#include #include #include #include #include using namespace std; int reslen[301][301]; int respos[300][301]; string st1[101],st2[101],resst[101]; int main(){ freopen("1.txt","r",stdin); int i,x,y,st1len,st2len; while(!cin.eof()){ memset(reslen,0,sizeof(reslen)); memset(respos,1,sizeof(respos)); i=0; while(cin>>st1[i]){ if(st1[i]=="#"){ st1len=i; break; } i++; } i=0; while(cin>>st2[i]){ if(st2[i]=="#"){ st2len=i; break; } i++; } for ( x=0;xreslen[x+1][y]){ reslen[x+1][y+1]=reslen[x][y+1]; respos[x+1][y+1]=3; } else { reslen[x+1][y+1]=reslen[x+1][y]; respos[x+1][y+1]=1; } } } } x=st1len;y=st2len; i=0; while(1) { if(respos[x][y]==1) y--; else if(respos[x][y]==2) { resst[i++] =st1[x-1]; x--,y--; }else if(respos[x][y]==3) x--; if(x<=0 || y<=0) break; } int first=1; while(i--) if(first){cout<

你可能感兴趣的:(动态规划)