import std.stdio;
import std.conv;
import std.string;
import std.typecons;
import std.algorithm;
import std.array;
import std.range;
import std.math;
import std.regex : regex;
import std.container;
import std.bigint;


void main()
{
  auto nh = readln.chomp.split.to!(int[]);
  auto n = nh[0];
  auto h = nh[1];
  auto b = new int[](n);
  int amax;
  foreach (i; 0..n) {
    auto ab = readln.chomp.split.to!(int[]);
    b[i] = ab[1];
    amax = max(ab[0], amax);
  }
  int bsum;
  int cnt;
  b = b.sort!("b < a").array;

  foreach (i; 0..n) {
    if (b[i] > amax) {
      bsum += b[i];
      cnt++;
      if (bsum >= h) {
        break;
      }
    }
  }
  h -= bsum;
  if (h < 0) {
    h = 0;
  }
  cnt += h / amax;
  if (h % amax) {
    cnt++;
  }
  cnt.writeln;
}
