#include<bits/stdc++.h>
using namespace std;
#define int long long
const int N=1e6;
struct node{
int be,idx;
};
string a[N];
int ans,vis[N];
map<string,int> mp,f;
queue<node> q;
signed main(){
ios::sync_with_stdio(false);
int n,m;
cin>>n;
for(int i=1;i<=n;i++){
string s;
cin>>s;
mp[s]=i;
}
cin>>m;
for(int i=1;i<=m;i++){
cin>>a[i];
if(mp[a[i]]&&!f[a[i]]){
ans++;
f[a[i]]=1;
}
}
cout<<ans<<endl;
ans=0;
for(int i=1;i<=m;i++){
if(!mp.count(a[i])){
continue;
}
int id=mp[a[i]];
if(!vis[id]){
ans=INT_MAX;
}
vis[id]=i;
q.push({i,id});
while(q.front().be!=vis[q.front().idx]){
q.pop();
}
ans=min(ans,i-q.front().be+1);
}
cout<<ans;
return 0;
}
自测#7中比答案多1,求调