自己写的各种超时,看了别人的代码想通,就觉得很简单,乌龟拿出去之后的排列顺序可以由自己定,也就是说拿出去之后的顺序一定是标准顺序,所以只需要遍历一边混乱的次序,把不和谐的调出去,就可以了,至于输出因为是乌龟只能拿到最上面,所以是逆序输出
#include<stdio.h>
#include<iostream>
#include<string.h>
using namespace std;
char s1[250][200],s2[250][200];
int main(){
int testcase,n,i,j;
cin>>testcase;
while(testcase--){
cin>>n;
getchar();
for(i=0;i<n;i++)
gets(s1[i]);
for(i=0;i<n;i++)
gets(s2[i]);
j=n-1;
for(i=n-1;i>=0;i--){
if(strcmp(s1[i],s2[j])==0)
j--;
}
for(;j>=0;j--){
cout<<s2[j]<<endl;
}
cout<<endl;
}
return 0;
}