import bisect

n, h = map(int, input().split())
a = []
b = []
for i in range(n):
    A, B = map(int, input().split())
    a.append(A)
    b.append(B)
b = sorted(b)
nage = b[bisect.bisect_right(b, max(a)):]
ans = 0
for i in nage[::-1]:
    h -= i
    ans += 1
    if h <= 0:
        break
ans += max(-(-h // max(a)), 0)
print(ans)
