import math

def main(n, h, ab):
    count = 0
    max_a = int(sorted(ab, key=lambda x: int(x[0]), reverse=True)[0][0])
    for x in sorted(ab, key=lambda x: x[1], reverse=True):
        if int(x[1]) >= max_a:
            h -= int(x[1])
            count += 1
            if h <= 0:
                return(count)

    count += math.ceil(h / max_a)

    return(count)

n, h = map(int, input().split(' '))
ab = [input().split(' ') for _ in range(n)]
print(main(n, h, ab))