function parseInt(x) parse(Int, x) end

function sub(maxa, useb, h)
  hp = h
  count = 0
  for i in 1:length(useb)
    if hp > 0
      hp -= useb[i]
      count += 1
    end
  end
  if hp > 0
    if hp%maxa == 0
      count += div(hp, maxa)
    else
      count += div(hp, maxa)+1
    end
  end
  print(count)
end

function main()
  n = parseInt.(split(readline()))
  ab = Array{Int}(2,n[1])
  for i in 1:n[1]
    ab[:,i] = readline() |> split |> x -> parseInt.(x)
  end
  maxa = maximum(ab[1,:])
  useb = Int[]
  for i in 1:n[1]
    if ab[2,i] > maxa
      push!(useb, ab[2,i])
    end
  end
  sub(maxa, useb, n[2])
end

main()