def extended_euclid(a, b): if a == 0: return b, 0, 1 else: g, y, x = extended_euclid(b%a, a) return g, x-(b//a)*y, y def CRT(B, M): r, m = 0, 1 for i in range(len(B)): d, x, y = extended_euclid(m, M[i]) if (B[i]-r)%d != 0: return 0, -1 tmp = (B[i]-r)//d*x%(M[i]//d) r += m*tmp m *= M[i]//d return r, m N = int(input()) P, Q, R = map(int, input().split()) A, B, C = map(int, input().split()) E, M = CRT([A, B, C], [P, Q, R]) if N%M < E: print(N//M) else: print(N//M+1)