Hdu5178

题意:

题目给你N个点,问有多少对点的长度小于K 。

解法:

首先将所给的坐标从大到小排序,则此题转化为:对排序后的新数列,对每个左边的\(x_a\)找到它右边最远的 $ x_b $ 使得 $ x_a - x_b \leq k $,累计所有的 $ b-a $ 的和即可。

具体实现可以使用二分。

CODE:

#include<iostream>
#include<cstdio>
#include<cstring>
#include<algorithm>
#include<cmath> using namespace std; const int N = 1e5 + 5;
#define LL long long
int n, k, T,v[N];
LL ans; inline int work(int x, int tmp) {
int l = x, r = n, mid = (l + r) >> 1;
while(l <= r) {
if(v[mid] <= tmp)
l = mid + 1;
else r = mid-1;
mid = (l + r) >> 1;
}
return mid;
} int main () {
scanf ("%d", & T);
while(T--) {
ans = 0;
scanf("%d%d",&n,&k);
for(int i = 1 ; i <= n ; ++i)
scanf ("%d", & v[i]);
sort(v + 1, v + n + 1);
for(int i = 1 ; i <= n ; ++i) {
int tmp = v[i] + k;
ans += (work(i, tmp) - i);
}
printf ("%lld\n", ans);
}
return 0;
}

Hdu5178的更多相关文章

  1. hdu5178 尺取

    会爆int /* 给定数轴上一些点对,问有多少点对之间的距离差不超过k 点对排序后尺取法:枚举每个左边界,找到一个右边界使得 */ #include<bits/stdc++.h> #def ...

  2. hdu5178 pairs

    题目 //打注释的是我的代码,一直超时,别人三行代码顶我一坨,同是尺取法,为什么 我的复杂度就这么高呢? #include <cstdio> #include <queue> ...

随机推荐

  1. 【原创】大叔经验分享(90)linux服务器iowait和负载很高

    # top top - 21:21:51 up 207 days, 1:30, 5 users, load average: 0.90, 0.79, 1.62 Tasks: 249 total, 1 ...

  2. Python练习_数据类型_day4

    题目 1.作业 1,写代码,有如下列表,按照要求实现每一个功能 li = ["alex", "WuSir", "ritian", " ...

  3. css布局笔记

    1.display   block块级元素(div.p等) inline 行内元素(a.span等) 常见的例子:把li修改成inline ,制作成水平菜单 2.max-width 来适应不同浏览器窗 ...

  4. Java 之 Map 接口

    一.Map 接口概述 java.util.Map 接口专门用来存放键值对这种对象关系的对象. 下面比较一下 Collection 与 Map 的区别: Collection 中的集合,元素是孤立存在的 ...

  5. Microsoft Internet Explorer v11 XML External Entity Injection 0day

    [+] Credits: John Page (aka hyp3rlinx) [+] Website: hyp3rlinx.altervista.org[+] Source:  http://hyp3 ...

  6. 从零开始配置一个简单的webpack打包

    一.基础配置 1.创建一个名为demo-webpack的文件夹(名称随意) 2.初始化一个package.json文件 //在cmd窗口中使用以下命令快速创建 npm init -y 3.安装webp ...

  7. Java流对象:InputStream、OutputStream、Reader、Writer

    流对象使用完一般要用close方法关闭.释放资源. InputStream 和OutPutStream 二者都是字节输入和输出的抽象父类,子字节为单位处理数据,每次读取.写入一个字节,适合处理二进制文 ...

  8. 用javafx webview 打造自己的浏览器

    背景 项目需要做一个客户端的壳,内置浏览器,访问指定 的url 采用技术 java 1.8 开始吧! java环境配置略 hello world import javafx.application.A ...

  9. 异常-ERROR yarn.ApplicationMaster: User class threw exception: java.sql.SQLException: Communications link failure

    1 详细异常信息 ERROR yarn.ApplicationMaster: User class threw exception: java.sql.SQLException: Communicat ...

  10. vs2010 glfw glew glad glm 配置

    OpenGL: Configuring GLFW and GLEW in Visual C++ Express Posted by Dimitri | Aug 14th, 2013 | Filed u ...