import sys
readline = sys.stdin.readline
from bisect import bisect_left

def main():
    N, H = map(int, readline().rstrip().split())
    A, B = [], []
    for _ in range(N):
        a, b = map(int, readline().rstrip().split())
        A.append(a)
        B.append(b)
    
    a_max = max(A)
    B.sort()
    i = bisect_left(B, a_max)
    damage = sum(B[i:])
    cost = len(B[i:])
    cost += - (-(H - damage) // a_max)
    print(cost)

if __name__ == '__main__':
    main()