def solve(block_a, block_b): block_a = list(sorted(block_a, reverse=True)) block_b = list(sorted(block_b, reverse=True)) ans = 0 last = -1 height = 2 ** 64 change = True while change: change = False block_list = block_a if last == -1 else block_b for block in block_list: if block < height: ans += 1 height = block last *= -1 change = True break return ans def main(): nw = int(input()) w = list(map(int, input().split())) nb = int(input()) b = list(map(int, input().split())) print(max(solve(w, b), solve(b, w))) if __name__ == '__main__': main()