C. Cinema
#include <string>
#include <algorithm>
#include <cstdio>
#include <cstring>
#include <map>
using namespace std;
struct node{
int z,f;
}mov[200005];
int last,mx,index;
int main()
{
int m,n,a;
while(~scanf("%d",&n)){
map<int,int> smap;
map<int,int> mmap;
mx = -1,last = -1,index = -1;
for(int i = 1; i <= n; i++){
scanf("%d",&a);
smap[a]++;
}
scanf("%d",&m);
for(int i = 1; i <= m; i++){
scanf("%d",&mov[i].z);
map<int,int>::iterator sp = smap.begin();
sp = smap.find(mov[i].z);
if(sp != smap.end()){
if((smap[mov[i].z]) > mx){
last = index;
index = i;
mx = (smap[mov[i].z]);
}else if((smap[mov[i].z]) == mx)
last = mx;
}
}
int mm = -1,indd = -1;
for(int i = 1; i <= m; i++){
scanf("%d",&mov[i].f);
if(last == mx){
if(smap[mov[i].z] == mx || mx == -1){
if(smap[mov[i].f] > mm){
mm = smap[mov[i].f];
indd = i;
}
}
}
}
if(last != mx){
printf("%d\n",index);
}else{
printf("%d",indd);
}
}
return 0;
}