R,P,Q = list(map(int,input().split())) A,B,C,D = list(map(int,input().split())) def check(n): cost = P * n free = sum([max(A-n,0), max(B-n,0), max(C-n,0), D]) need = sum([max(n-A,0), max(n-B,0), max(n-C,0)]) if(free < need):return False cost += need * Q return cost <= R ok,ng = 0,10**18 while(ng - ok > 1): mid = (ok+ng)//2 if(check(mid)): ok = mid else: ng = mid print(ok)