from collections import defaultdict, deque, Counter from functools import cache # import copy from itertools import combinations, permutations, product, accumulate, groupby, chain from more_itertools import distinct_permutations from heapq import heapify, heappop, heappush import math import bisect from pprint import pprint from random import randint, shuffle, randrange import sys # sys.setrecursionlimit(200000) input = lambda: sys.stdin.readline().rstrip('\n') inf = float('inf') mod1 = 10**9+7 mod2 = 998244353 def ceil_div(x, y): return -(-x//y) ################################################# a, b, c, d = map(int, input().split()) if a == 0: print(d//b) elif b == 0: print(c//a) else: print(min(c//a, d//b))