#include<iostream> #include<cstdio> #include<fstream> #include<cstring> #include<algorithm> bool cmp(int a,int b) { return a<b?0:1; } int main() { freopen("in.txt","r",stdin); bool flag,end; char ser[1000][16],ip[5000][16];int begin,m,n,i,j,count,num;//×Ö·û´®½áÊø·û£¡£¡£¡ int record[1000]; while(scanf("%d",&n)!=EOF) { end=false; for(i=0;i<n;i++) scanf("%s",&ser[i]); scanf("%d",&m); i=0; for(count=0;count<m;count++) { scanf("%s",&ip[i]); flag=false; for(j=0;j<n;j++) if(strcmp(ip[i],ser[j])==0) {flag=true;break;} if(flag) i++; if(flag&&n==1) end=true; } if(!end){ memset(record,0,sizeof(record)); m=i;count=0;j=0;num=0; begin=0; while(j<m-1) { num=0; for(i=0;i<n;i++) { flag=false; for(j=begin+1;j<m;j++) { if(strcmp(ser[i],ip[j])==0) { record[i]=j;flag=true; break; } } if(!flag) record[i]=m; } std::sort(record,record+n,cmp); j=record[0];begin=j; if(j!=m)count++; } // if(count>0) count--; printf("%d\n",count); } else printf("-1\n"); } return 0; }