10pts
#include<bits/stdc++.h>
using namespace std;
int n, ans=0;
double minl, maxl;
struct Triangle{
int x, y, l, id;
double u, r, len;
} tr[1005];
bool cmp(Triangle a, Triangle b){
return a.len<b.len;
}
int main()
{
cin>>n;
for(int i=1;i<=n;i++){
cin>>tr[i].x>>tr[i].y>>tr[i].l;
tr[i].id=i;
tr[i].len=sqrt(tr[i].x*tr[i].x+tr[i].y*tr[i].y);
tr[i].u=(tr[i].y+tr[i].l)*1.0/tr[i].x;
tr[i].r=tr[i].y*1.0/(tr[i].x+tr[i].l);
}
sort(tr+1, tr+n+1, cmp);
maxl=tr[1].u, minl=tr[1].r;
for(int i=2;i<=n;i++){
// cout<<tr[i].id<<endl<<maxl<<" "<<minl<<endl<<tr[i].len<<" "<<tr[i].u<<" "<<tr[i].r<<endl<<endl;
if(tr[i].u>maxl || tr[i].r<minl){
ans++;
if(tr[i].u>maxl) maxl=tr[i].u;
if(tr[i].r<minl) minl=tr[i].r;
}
}
cout<<ans+1;
return 0;
}