n, h = map(int, input().split())
a, b = zip(*(tuple(map(int, input().split())) for _ in range(n)))
m = max(a)
c = 0
for v in sorted(b)[::-1]:
    if h<=0 or v<m:
        break
    h -= v
    c += 1
print(c + (max(0,h)+m-1)//m)