from collections import * import sys sys.setrecursionlimit(10 ** 6) int1 = lambda x: int(x) - 1 p2D = lambda x: print(*x, sep="\n") def II(): return int(sys.stdin.readline()) def MI(): return map(int, sys.stdin.readline().split()) def MF(): return map(float, sys.stdin.readline().split()) def LI(): return list(map(int, sys.stdin.readline().split())) def LF(): return list(map(float, sys.stdin.readline().split())) def LLI(rows_number): return [LI() for _ in range(rows_number)] def main(): wn = II() ww = LI() bn = II() bb = LI() ww.sort() bb.sort() h = 1 wid = ww[wn - 1] wi = wn - 2 bi = bn - 1 while 1: while bi>=0 and bb[bi] >= wid: bi -= 1 if bi<0:break wid=bb[bi] h+=1 bi-=1 while wi>=0 and ww[wi] >= wid: wi -= 1 if wi<0:break wid=ww[wi] h+=1 wi-=1 ans=h h = 1 wid = bb[bn - 1] wi = wn - 1 bi = bn - 2 while 1: while wi>=0 and ww[wi] >= wid: wi -= 1 if wi<0:break wid=ww[wi] h+=1 wi-=1 while bi>=0 and bb[bi] >= wid: bi -= 1 if bi<0:break wid=bb[bi] h+=1 bi-=1 if h>ans:ans=h print(ans) main()