#include <iostream>
#include <vector>
#include <algorithm>
using namespace std;
struct Person {
double t, v, a;
};
bool compare(const Person &x, const Person &y) {
return x.t < y.t;
}
int main() {
double L;
int n;
vector<Person> p(n);
for(int i = 0; i < n; i++) {
cin >> p[i].t >> p[i].v;
p[i].a = p[i].t + (L / p[i].v);
}
sort(p.begin(), p.end(), compare);
vector<int> dp(n, 1);
int max_clique = 0;
for(int i = 0; i < n; i++) {
for(int j = 0; j < i; j++) {
if(p[j].a > p[i].a) {
dp[i] = max(dp[i], dp[j] + 1);
}
}
max_clique = max(max_clique, dp[i]);
}
cout << (n == 0 ? 0 : max_clique) << endl;
return 0;
}