#!/usr/bin/env python3.8 # %% import sys read = sys.stdin.buffer.read readline = sys.stdin.buffer.readline readlines = sys.stdin.buffer.readlines # %% N = int(readline()) A = tuple(map(int, readline().split())) B = tuple(map(int, readline().split())) D = tuple(sorted(map(int, readline().split()))) # %% def test(n): difficulty = D[:n][::-1] dp = [0] * (n + 1) dp[0] = 1 for j in range(1, n + 1): if A[0] + B[j] >= difficulty[j - 1]: dp[j] = 1 else: break if dp[-1]: return True for i in range(1, n + 1): dp.pop() for j in range(n - i + 1): if not dp[j]: continue if A[i] + B[j] < difficulty[i + j - 1]: dp[j] = 0 continue if j < n - i: dp[j + 1] = 1 if dp[-1]: return True return False # %% left = 0 right = N + 1 while left + 1 < right: x = (left + right) // 2 if test(x): left = x else: right = x print(left)