def main(): import sys input = sys.stdin.read().split() idx = 0 N = int(input[idx]) idx +=1 A = list(map(int, input[idx:idx+N])) idx +=N B = list(map(int, input[idx:idx+N])) idx +=N min_max = float('inf') for s in range(N): current_A = A.copy() selected = [False] * N counts = [0] * N for step in range(N): enemy = B[(s + step) % N] min_val = float('inf') min_indices = [] for i in range(N): if current_A[i] < min_val: min_val = current_A[i] min_indices = [i] elif current_A[i] == min_val: min_indices.append(i) found = False for i in min_indices: if not selected[i]: selected[i] = True counts[i] +=1 current_A[i] += (enemy // 2) found = True break if not found: for i in min_indices: if not selected[i]: selected[i] = True counts[i] +=1 current_A[i] += (enemy // 2) found = True break if not found: for i in min_indices: selected[i] = True counts[i] +=1 current_A[i] += (enemy // 2) found = True break max_count = max(counts) if max_count < min_max: min_max = max_count if min_max == 1: break print(min_max) return if __name__ == "__main__": main()