n, m = map(int, input().split()); assert 1 <= n <= 10**6 and 1 <= m <= 10**9 AB = [list(map(int, input().split())) for _ in range(n)] for i in range(n): assert 0 <= AB[i][0] <= m and 1 <= AB[i][1] <= 10**9 C = [(m-AB[i][0]) // AB[i][1] + 1 for i in range(n)] C.sort() l = 0 r = n while r - l > 1: mid = (l + r) >> 1 f = 1 for i in range(n): if i // mid + 1 > C[i]: f = 0 if not f: l = mid else: r = mid print(r)