import math

def main(n, h):
    count = 0
    
    if h > 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))