mod = 10 ** 9 + 7 from functools import cmp_to_key # 比較関数が正を返した場合」に要素の順序を入れ替え、「負を返した場合」は順序をそのままに保つ # 比較関数:a=(Ai,Bi), b=(Aj,Bj) を Ai/Bi と Aj/Bj の大小で比較 def compare_frac(a, b): Ai, Bi = a Aj, Bj = b # Ai/Bi < Aj/Bj ⇔ Ai*Bj < Aj*Bi : # 分数部分は降順にソートしたいので Ai/Bi < Aj Aj * Bi: return 1 else: return 0 N = int(input()) A = list(map(int, input().split())) B = list(map(int, input().split())) C = [] asum = 0 for i in range(N): if A[i] != 0: C.append((B[i],A[i])) asum += abs(A[i]) C.sort(key= cmp_to_key(compare_frac)) t = 0 for b, a in C: t += abs(a) if t*2 > asum: break ans = b * pow(a,-1,mod) % mod print(ans)