#include <bits/stdc++.h>
#define IOS ios_base::sync_with_stdio(0),cin.tie(0),cout.tie(0)
#define _zero(a) memset(a, 0, sizeof(a))
#define endl '\n'
#define int long long
#define mp make_pair
#define x first
#define y second
#define all(a) (a).begin(), (a).end()
#define rall(a) (a).rbegin(), (a).rend()
typedef long long ll;
typedef double dd;
typedef long double ld;
using namespace std;
const int inf = 1e10;
const int M = 998244353;
const ld pi = atan2(0, -1);//arctan(y/x);
const ld eps = 1e-4;
const int maxn = 6e5 + 1000;
int cnt[maxn];
vector<int> a, b, c, d;
int n, m;
int query(int x)
{
return lower_bound(all(d), x) - d.begin();
}
void solve()
{
for(int v : a) d.push_back(v);
for(int v : b) d.push_back(v);
for(int v : c) d.push_back(v);
sort(all(d));
d.erase(unique(all(d)), d.end());
for(int v : a){
int idx = query(v);
cnt[idx]++;
}
int ans = 0;
for(int i = 1; i < m; i++){
int idx1 = query(b[ans]), idx2 = query(b[i]), idx11 = query(c[ans]), idx22 = query(c[i]);
if(cnt[idx1] < cnt[idx2] || (cnt[idx1] == cnt[idx2] && cnt[idx11] < cnt[idx22])) ans = i;
}
cout << ans + 1;
}
signed main()
{
IOS;
_zero(cnt);
cin >> n;
for(int i = 1, j; i <= n; i++) {cin >> j; a.push_back(j);}
cin >> m;
for(int i = 1, j; i <= m; i++) {cin >> j; b.push_back(j);}
for(int i = 1, j; i <= m; i++) {cin >> j; c.push_back(j);}
solve();
}