题目链接:https://codeforces.com/contest/1156/problem/C

题意:给出n个数和整形数z,定义一对数为差>=z的数,且每个数最多和一个数组成对,求最多有多少对。

思路:先按升序排序,在区间[0,n/2]二分答案即可,判断m是否满足条件利用贪心思想,即看前x个数和后x个数是否能对应组成对。

AC代码:

#include<cstdio>
#include<algorithm>
using namespace std; int n,z,a[]; bool judge(int x){
bool ans=true;
for(int i=;i<x;++i)
if(a[i]+z>a[n+i-x]){
ans=false;
break;
}
return ans;
} int main(){
scanf("%d%d",&n,&z);
for(int i=;i<n;++i)
scanf("%d",&a[i]);
sort(a,a+n);
int l=,r=n/,m;
while(l<=r){
m=(l+r)>>;
if(judge(m)) l=m+;
else r=m-;
}
printf("%d\n",r);
return ;
}

最新文章

  1. HP滤波原理浅学
  2. OpenLayers工作原理
  3. 详解div+css相对定位和绝对定位用法
  4. 烂泥:Linux系统与windows系统文件同步
  5. NOIP2010提高组 机器翻译 -SilverN
  6. 如何写出让hr一看就约你面试的简历?
  7. rpm 命令
  8. ssm控制输出sql(二)
  9. Appium使用PageFactory初始化对象时报空指针错误
  10. C++数据结构之Linked Stack(链式栈)
  11. Java Collections Source Code Series 1 --- 简介
  12. Fidder的几点补充
  13. centos7下载安装谷歌浏览器
  14. SQL内连接-外连接join,left join,right join,full join
  15. 架构师之路——里氏替换原则LSP
  16. js函数柯里化,实现bind
  17. python与java的内存机制不一样;java的方法会进入方法区直到对象消失 方法才会消失;python的方法是对象每次调用都会创建新的对象 内存地址都不i一样
  18. ajax访问服务器的基础格式写法
  19. Android 敏感权限申请
  20. date简述

热门文章

  1. vue项目搭建步骤以及一些安装依赖包
  2. 【Winfrom-DataTable填充ListView】ListView与DataTable相互转换 .net
  3. Spring MVC 的 multipartResolver 不能同iWebOffice2006 共同使用
  4. javascript中的原型和原型链(一)
  5. ES6非常棒的特性-解构
  6. 获取select的option值
  7. linux iconv文件编码转换
  8. 第七周学习总结&amp;JAVA实验五报告。
  9. snmpEngineBoots &amp; snmpEngineID数据存储到非易失性存储设备
  10. DeepFaceLab:视频中有多人,仅替换特定人脸的方法!