fork download
  1. #include <bits/stdc++.h>
  2. #define fi first
  3. #define se second
  4. #define ll long long
  5. #define N int(1e7)
  6. using namespace std;
  7. ll n, ans;
  8. bool ok[N+10];
  9. ll x[N+10],y[N+10];
  10. int main()
  11. {
  12. ios::sync_with_stdio(0);
  13. cin.tie(0);
  14. cout.tie(0);
  15.  
  16. cin>>n;
  17. for(int i=1; i<=n; i++) cin>>x[i]>>y[i];
  18. x[0]=y[0]=0;
  19. if(n<=2000)
  20. {
  21. for(int i=1; i<=n; i++)
  22. {
  23. if(!ok[i])
  24. {
  25. for(int j=0; j<=n; j++)
  26. {
  27. if(i==j) continue;
  28. if(abs(x[i]-x[j])<=(y[i]-y[j])) ok[j]=1;
  29. }
  30.  
  31. }
  32.  
  33. }
  34. for(int i=1; i<=n; i++) if(!ok[i]) ans++;
  35. cout<<ans;
  36. }
  37. else
  38. {
  39. ll min1=LLONG_MAX;
  40. ll max1=LLONG_MIN;
  41. for(int i=1;i<=n;i++)
  42. {
  43. if(max1>=(x[i]+y[i])) ok[i]=1;
  44. max1=max(max1,x[i]+y[i]);
  45. }
  46. for(int i=n;i>=1;i--)
  47. {
  48. if(min1<=(x[i]-y[i])) ok[i]=1;
  49. min1=min(min1,x[i]-y[i]);
  50. }
  51. for(int i=1; i<=n; i++) if(!ok[i]) ans++;
  52. cout<<ans;
  53. }
  54.  
  55.  
  56. return 0;
  57. }
  58.  
  59.  
Success #stdin #stdout 0s 5696KB
stdin
Standard input is empty
stdout
Standard output is empty