N = int(input()) A = list(map(float,input().split())) B = list(map(float,input().split())) def check(n): MIN = 1e9 S = [v:=0.0] + [v:=v+A[i]-n*B[i] for i in range(N)] v = 1e18 MIN_left = [v:=min(v,S[i]) for i in range(N)] v = -1e18 MAX_right = [v:=max(v,S[i]) for i in range(N,-1,-1)][::-1] for i in range(N): MIN = min(MIN, MAX_right[i+1] - MIN_left[i]) return MIN > 0.0 ok,ng = 0.0, 1e9 while(ng - ok > 1e-7): mid = (ok+ng)/2 if(check(mid)): ok = mid else: ng = mid print(ok)