1299: 团队竞赛

Memory Limit:256 MB Time Limit:1.000 S
Judge Style:Text Compare Creator:
Submit:50 Solved:4

Description

信息学竞赛在不同的比赛中,通常有不同的赛制,其中就有一种由 $3$ 位选手组队的团体比赛。

现有 $n$ 名学生,其中第 $i$ 名学生有编程能力值 $a_i$ ,小爱老师需要从中选出 $3$ 名选手参加本次比赛。为了不让团队的实力过于悬殊,他希望选出的 $3$ 名选手相互之间能力值之差不超过 $X$。

请你帮助小爱老师计算一下,有多少种组队方法?
(注意:相同的三位学生组队,只计一种选法,即不考虑选出学生相互之间的先后顺序)

Input

输入共两行:
输入第一行,两个正整数 $n,X$
输入第二行,$n$ 个正整数 $a_1,a_2,...,a_n$

Output

输出只包含一个正整数,表示最终答案的方案数

Sample Input Copy

4 20
30 20 10 40

Sample Output Copy

2

HINT

样例说明:

$\{10,20,30\},\{20,30,40\}$ 共 $2$ 种选法


数据范围:

- 对于 $30\%$ 的数据,$1≤n≤100$
- 对于 $50\%$ 的数据,$1≤n≤10^3$
- 对于 $100\%$ 的数据,$1≤n≤10^5$ ,$1≤a_i,X≤10^9$

Source/Category