题意:找出从旧序列,到新序列需要爬的乌龟的顺序,看到别人画的图,就很清楚了
#include <iostream>
#include <cstdio>
#include <cstring>
#include <stack>
using namespace std;
int main()
{
int n,a[300],c,i,j;
char last[300][300],now[300][300];
cin>>c;
for(int e = 0 ; e < c ; e++ )
{
cin>>n;
getchar();
for( i = 0 ; i < n ; i++ )
gets(last[i]);
for( i = 0 ; i < n ; i++ )
gets(now[i]);
memset(a,0,sizeof(a));
for( i = n-1,j = n-1 ; j >= 0; )
{
if(strcmp(last[j],now[i] ) == 0 )
{
a[i] = 1;
i--;
}
else j--;
}
for(i = n-1 ; i >= 0 ; i--)
if(a[i] == 0 )
puts(now[i]);
cout<<endl;
}
return 0;
}