N, H = gets.split.map(&:to_i)
arrs = N.times.map { gets.split.map(&:to_i) }

max_first = arrs.map { |arr| arr[0] }.max
seconds = arrs.map { |arr| arr[1] }.select { |second| second > max_first }.sort.reverse

counter = 0
hp = H
while hp >= 0
  if !seconds.empty?
    hp -= seconds.shift
    counter += 1
  else
    counter += (hp + (max_first - 1)) / max_first
    break
  end
end

puts counter