//Subarray Sum
#include <iostream>
#include <algorithm>
using namespace std;
struct div
{
int l,r;
bool inv;
bool operator<(div y)
{
if(l==y.l)return r<y.r;
return l<y.l;
}
}a[100002];
int main()
{
int n,l=-1e9-7,cnt=0;
cin >> n;
for(int i=1;i<=n;i++)
{
int x,l_;
cin >> x >> l_;
a[i].l=x-l_;
a[i].r=x+l_;
//cout << l << " " << a[i].l << " " << a[i].r << endl;
}
sort(a+1,a+n+1);
int f=0;
do
{
f=0;
for(int i=1;i<=n;i++)
{
if(!a[i].inv)
{
if(a[i].r<l)
{
a[i-1].inv=1;
f=1;
//cout << i << endl;
}
l=a[i].r;
}
}
}while(f);
l=-1e9;
for(int i=1;i<=n;i++)
{
if(!a[i].inv&&a[i].l>=l)
{
l=a[i].r;
cnt++;
//cout << i << " ";
}
//cout << l << " " << a[i].l << " " << a[i].r << endl;
}
cout << cnt;
return 0;
}