#include using namespace std; #define FOR(i,a,b) for(int i=(a);i<(b);i++) #define REP(i,n) FOR(i,0,n) #define ALL(v) (v).begin(),(v).end() template inline bool chmax(A &a, B b) { if (a inline bool chmin(A &a, B b) { if (a>b) { a=b; return 1; } return 0; } typedef unsigned long long ull; typedef long long ll; typedef pair pii; typedef pair pll; typedef pair P; const ll INF = 1ll<<60; const ll MOD = 1000000007; const double EPS = 1e-10; int n, m; vector w, b; int solve() { int last = 0, cnt = 0; while (true) { vector::iterator it; if (cnt & 1) { it = upper_bound(ALL(w), last); if (it == w.end()) break; } else { it = upper_bound(ALL(b), last); if (it == b.end()) break; } last = *it; cnt++; } return cnt; } int main() { cin >> n; w.resize(n); REP(i, n) cin >> w[i]; cin >> m; b.resize(m); REP(i, m) cin >> b[i]; sort(ALL(w)); sort(ALL(b)); int ans = solve(); swap(n, m); swap(w, b); chmax(ans, solve()); cout << ans << endl; return 0; }