#sys.setrecursionlimit(n) import heapq import re import bisect import random import math import itertools from collections import defaultdict, deque from copy import deepcopy from decimal import * n1 = int(input()) w = list(-(int(_)) for _ in input().split()) n2 = int(input()) b = list(map(int, input().split())) w1 = deque(sorted(w)) w1.append(0xFFFF) b1 = deque(reversed(sorted(b))) b1.append(0xFFFF) w2 = deque(sorted(w)) w2.append(0xFFFF) b2 = deque(reversed(sorted(b))) b2.append(0xFFFF) ww = [0xFFFF] bb = [-(0xFFFF)] while(not(w1[0] == b1[0] == 0xFFFF) and not(w2[0] == b2[0] == 0xFFFF)): if ww[-1] > 0: if ww[-1] > abs(w1[0]): ww.append(w1.popleft()) elif w1[0] == 0xFFFF: b1[0] = 0xFFFF else: w1.popleft() else: if abs(ww[-1]) > b1[0]: ww.append(b1.popleft()) elif b1[0] == 0xFFFF: w1[0] = 0xFFFF else: b1.popleft() if bb[-1] > 0: if bb[-1] > abs(w2[0]): bb.append(w2.popleft()) elif w2[0] == 0xFFFF: b2[0] = 0xFFFF else: w2.popleft() else: if abs(bb[-1]) > b2[0]: bb.append(b2.popleft()) elif b2[0] == 0xFFFF: w2[0] = 0xFFFF else: b2.popleft() print(max(len(ww),len(bb)) - 1)