Re: 111 Why WA??
Posted: Tue May 15, 2012 7:51 pm
I've checked all I/O and can't find a mistake, but I get WA now.
Can anyone help~
Can anyone help~
Code: Select all
/*111*/
#include<stdio.h>
#include<algorithm>
using namespace std;
int st[30];
int in[30];
int LCS(int len)
{
int dp1[30],dp2[30];
int *A,*B,*temp;
A=dp1;B=dp2;
if (st[0]==in[0])A[0]=1;
else A[0]=0;
for (int j=1;j<len;j++)
{
if (st[0]==in[j])
A[j]=1;
else
A[j]=0;
}
for (int i=1;i<len;i++)
{
if (st[i]==in[0])
B[0]=1;
else B[0]=A[0];
for (int j=1;j<len;j++)
{
if (st[i]==in[j])
{
B[j]=A[j-1]+1;
}
else B[j]=max(B[j-1],A[j]);
}
temp=A;A=B;B=A;
}
return A[len-1];
}
int main()
{
//freopen("in.txt","r",stdin);
//freopen("out.txt","w",stdout);
int len;
int k;
scanf("%d",&len);
for (int i=0;i<len;i++)
{
scanf("%d",&k);
st[k-1]=i+1;
}
while (scanf("%d",&k)!=EOF)
{
in[k-1]=1;
for (int i=1;i<len;i++)
{
scanf("%d",&k);
in[k-1]=i+1;
}
printf("%d\n",LCS(len));
}
return 0;
}