N, H = map(int, input().split())
max_a = 0
blist = []
counter = 0
killed = False
for _ in range(N):
    a, b = map(int, input().split())
    max_a = max(a, max_a)
    blist.append(b)

for b in sorted(blist, reverse=True):
    if H <= 0:
        killed = True
        break
    if b > max_a:
        counter += 1
        H -= b
if H % max_a == 0:
    print(counter + H // max_a)
else:
    print(counter + H // max_a + 1)
