#include <bits/stdc++.h>
using namespace std;
struct node {
  int x, w;
  bool operator<(const node &b) const { return x < b.x; }
} nd[222222];
int main() {
  int n;
  while (~scanf("%d", &n)) {
    for (int i = 0; i < n; ++i) scanf("%d%d", &nd[i].x, &nd[i].w);
    sort(nd, nd + n);
    int tx = nd[0].x, tw = nd[0].w;
    int ans = 1;
    for (int i = 1; i < n; ++i) {
      if (nd[i].x - nd[i].w >= tx + tw) {
        tx = nd[i].x;
        tw = nd[i].w;
        ans++;
      } else if (tw + tx > nd[i].x + nd[i].w) {
        tx = nd[i].x;
        tw = nd[i].w;
      }
    }
    printf("%d\n", ans);
  }
  return 0;
}
