import numpy as np
n, h =[int(i) for i in input().split()]
a = np.empty(n,dtype=int)
b = np.empty(n,dtype=int)
for i in range(n):
    a[i], b[i] = [int(i) for i in input().split()]
sort_b = np.sort(b)
max_a = np.max(a)
b_big = b[b>max_a]
b_sum = np.sum(b_big)
b_biglen= b_big.shape[0]
if b_sum >= h:
    ret = np.sum(b_big[::-1].cumsum() <=h)
else:
    ret = b_big.shape[0]
    ret += np.ceil((h -b_sum)/max_a)
print(str(int(ret)))