#include <bits/stdc++.h>
using namespace std;
#ifdef LOCAL
#include "debug.h"
#else
#define dbg(...) 47
#endif
int main() {
ios::sync_with_stdio(false);
cin.tie(nullptr);
int n;
cin >> n;
vector<int> x(n), e(n);
for (int i = 0; i < n; i++) {
cin >> x[i] >> e[i];
}
vector<int> ord(n);
iota(ord.begin(), ord.end(), 0);
sort(ord.begin(), ord.end(), [&](int i, int j) {
return x[i] < x[j];
});
vector<int> a(n), b(n);
for (int i = 0; i < n; i++) {
a[i] = x[ord[i]];
b[i] = e[ord[i]];
}
vector<int> t(n), s(n);
for (int i = 0; i < n; i++) {
t[i] = a[i] - b[i];
s[i] = a[i] + b[i];
}
set<int> k;
for (int i = 0; i < n; i++) {
k.insert(i);
}
int ans = 0;
while (!k.empty()) {
ans++;
int mn = 2e9, pos = 0;
for (int i = 0; i < n; i++) {
if (k.count(i) && t[i] <= mn) {
mn = t[i];
pos = i;
}
}
for (int i = 0; i <= pos; i++) {
k.erase(i);
}
for (int i = pos + 1; i < n; i++) {
if (s[i] <= s[pos]) {
k.erase(i);
}
}
}
cout << ans << '\n';
return 0;
}