import math

def main():
    N, H = map(int, input().split())

    cuts = []
    throws = []
    for i in range(N):
        tmp = [int(j) for j in input().split()]
        cuts.append(tmp[0])
        throws.append(tmp[1])

    max_cut = max(cuts)
    throws_new = list(filter((lambda x: x > max_cut), throws))
    H -= sum(throws_new)
    print(len(throws_new) + math.ceil(H / max_cut))


main()
