a, b, n, m = map(int, input().split()) l = 0 r = 10**18 while r - l > 1: mid = (l + r) // 2 e = a f = b if e < mid: f -= (mid - e) * m e = mid if f < mid: e -= (mid - f) * n f = mid if e >= mid and f >= mid: l = mid else: r = mid print(l)