#include using namespace std; #define rep(i, n) for (int i = 0; i < (n); ++i) using ll = long long; using ull = unsigned long long; int main() { cin.tie(nullptr)->sync_with_stdio(false); int n, m; cin >> n >> m; vector> v(n); rep(i, n) cin >> v[i].first >> v[i].second; vector d(n); rep(i, n) d[i] = (m - v[i].first) / v[i].second; sort(d.begin(), d.end()); int ans = 0; rep(i, n) { // i + 1 <= k * (d[i] + 1) ans = max(ans, (i + 1 + d[i]) / (d[i] + 1)); } cout << ans << '\n'; return 0; }