#HXOJ2960. 二分查找题六:差

提交2 通过1
通过率50%
时间限制1000ms
内存限制128MiB

题目描述

题目描述

小珅在网上刷题,感觉第一题:求两数的和(A+B Problem)太无聊了,于是增加了一题:A-B Problem,难倒了一群小朋友,哈哈。

题目是这样的:给出 N 个整数,一个差值 C,要求在这 N 个整数中找两个数 A和 B,使得 A−B=C,问这样的方案有多少种?

例如:N=5,C=2,5 个整数是:2 2 4 8 10。答案是 3。

具体方案:第 3 个数减第 1 个数;第 3 个数减第 2 个数;第 5 个数减第 4 个数。

输入格式

第一行2个正整数:N,C。

第二行N个整数:已经有序。注意:可能有相同的。

输出格式

一个整数,表示该串数中包含的所有满足 A−B=C 的数对的方案数。

输入样例 #1

4 1
1 1 2 2

输出样例 #1

4

输入样例 #2

5 2
2 2 4 8 10

输出样例 #2

3

输入样例 #3

6 5
0 0 0 5 5 10

输出样例 #3

8

提示

5 个数据:N 的范围是 [1…1,000]。

5 个数据:N 的范围是 [1…100,000]。

所有数据:

C 的范围是[1…100,000,000]。

N个整数中每个数的范围是:[0…100,000,000]。

数据范围

输入数据满足题目正文及输入格式中给出的约束。