题目描述
信息学竞赛在不同的比赛中,通常有不同的赛制,其中就有一种由 $3$ 位选手组队的团体比赛。
现有 $n$ 名学生,其中第 $i$ 名学生有编程能力值 $a_i$ ,小爱老师需要从中选出 $3$ 名选手参加本次比赛。为了不让团队的实力过于悬殊,他希望选出的 $3$ 名选手相互之间能力值之差不超过 $X$。
请你帮助小爱老师计算一下,有多少种组队方法?
(注意:相同的三位学生组队,只计一种选法,即不考虑选出学生相互之间的先后顺序)
输入
输入共两行:
输入第一行,两个正整数 $n,X$
输入第一行,$n$ 个正整数 $a_1,a_2,...,a_n$
输出
输出只包含一个正整数,表示最终答案的方案数
样例输入输出
提示
- 对于$30\%$的数据,$1 \leq n \leq 100$
- 对于$50\%$的数据,$1 \leq n \leq 10^3$
- 对于$100\%$的数据,$1 \leq n \leq 10^5$ ,$1 \leq a_i,X \leq 10^9$
样例1说明:{10,20,30},{20,30,40} 共2中选法