NW = int(input()) W = list(map(int,input().split())) NB = int(input()) B = list(map(int,input().split())) W.sort() B.sort() WB = [W+[0],B+[0]] NWB = [NW,NB] def solve(x): tmp = [] wb = [0,0] turn = x now = 0 b = 0 cnt = 0 while wb[turn] < NWB[turn]: while wb[turn] < NWB[turn] and now >= WB[turn][wb[turn]]: wb[turn] += 1 if WB[turn][wb[turn]] == 0: #print(tmp,cnt) return cnt now = WB[turn][wb[turn]] tmp.append((turn,now)) wb[turn] += 1 cnt += 1 turn ^= 1 #print(tmp,cnt) return cnt ans = 0 for i in range(2): ans = max(ans,solve(i)) print(ans)