主要这道题没有包含的情况,所以直接搞个左端,然后对于每个二分求一下>right的最近的位置j,那么ans就会增加 j 以后的;

#include <cstdio>
#include <cstring>
#include <cstdlib>
#include <algorithm>
#include <queue>
using namespace std; const int N=5e4+10;
struct asd{
int x,y;
};
asd q[N];
int n; bool cmp(asd a,asd b)
{
return a.x<b.x;
} int Find(int s,int e,int tmp)
{
int left=s;
int right=e;
while(left <= right)
{
int mid = (left+right) >> 1;
if(q[mid].x > tmp)
right = mid-1;
else
left = mid+1;
}
return left;
} int main()
{
int d,r;
scanf("%d",&n);
for(int i=0;i<n;i++)
{
scanf("%d%d",&d,&r);
q[i].x=d-r;
q[i].y=d+r;
}
sort(q,q+n,cmp);
int j;
int ans=0;
for(int i=0;i<n-1;i++)
{
j=Find(i+1,n-1,q[i].y);
ans+=n-j;
}
printf("%d\n",ans);
return 0;
}

最新文章

  1. asp.net的简易的参数化查询
  2. java 面试每日一题4
  3. Python 处理多层嵌套列表
  4. linux下udp编程
  5. 如何利用PhoneGap制作地图APP
  6. 基础笔记(一)Java 集合
  7. hibernate设置mysql的timestamp默认值技巧
  8. 【面试虐菜】—— Oracle知识整理《DBA的思想天空》
  9. LINQ 101——分区、Join、聚合
  10. C/C++使用Lu脚本协程
  11. Mysql 语句汇总(性能篇)
  12. 【代码实现】PHP生成各种随机验证码
  13. Unity3d中Dictionary和KeyValuePair的使用
  14. javascript基础(四)语句
  15. noip前集训
  16. 用js实现贪吃蛇
  17. kali网卡配置文件
  18. H5新特性总结
  19. [Bayes] Understanding Bayes: A Look at the Likelihood
  20. css重要知识点

热门文章

  1. FeatureLayer.MODE_SNAPSHOT限制数量问题
  2. jquery ui 怎么实现tab标签切换效果
  3. build a real-time analytics dashboard to visualize the number of orders getting shipped every minute to improve the performance of their logistics for an e-commerce portal
  4. mybatis入门(八)
  5. 对ShortCut和TWMKey的研究
  6. [IR课程笔记]Page Rank
  7. STM32 ~ 如何从ST网站找到对应的固件库
  8. iOS 打开应用与系统功能的调用
  9. hadoop 常用命令总结
  10. LoadRunner中两种录制模式的区别