import sys

N, H = [int(x) for x in sys.stdin.readline().strip().split()]
AB = [tuple(int(x) for x in sys.stdin.readline().strip().split()) for i in range(N)]
AB.sort(key=lambda x:(-x[0],x[1]))

def c1(p, cache={}):
    if p in cache:
        return cache[p]
    qs = [AB[j][1] for j in range(N) if AB[j][1] > p]
    r = sum(qs), len(qs)
    cache[p] = r
    return r

r = 1000000000000
old_p = None
for i in range(min(N, N)):
    p = AB[i][0]
    if p == old_p:
        continue
    old_p = p
    qss, qsl = c1(p)
    rr = ((H - qss + (p - 1)) // p) + qsl
    r = min(r, rr)

print(r)
