AT_cpsco2019_s4_c Make a Team

题目描述

拉斯克同学所在的大学的编程俱乐部有 $N$ 个人,第 $i$ 位成员的能力值为 $R_i$。 为了去参加大学的编程比赛,我们决定从编程俱乐部的部员中挑选出 $3$ 个人组成 $1$ 个队伍。 在这里,我们还有一个要求,让团队中能力值最高的人和最低的人的能力值的差在 $D$ 以下。 请你帮我求一下这样的团队有多少种。

输入格式

输入为以下形式为标准输入给出。 > $ N $ $ D $ $ R_1 $ $ R_2 $ $ \ldots $ $ R_N $

输出格式

输出满足条件的队伍有几种。 请注意,答案可能不属于 $32$ 位整数类型。 ## 样例 #1 ### 样例输入 #1 ``` 5 400 300 700 1000 800 500 ``` ### 样例输出 #1 ``` 3 ``` ## 样例 #2 ### 样例输入 #2 ``` 3 1000 2000 2000 4000 ``` ### 样例输出 #2 ``` 0 ``` ## 样例 #3 ### 样例输入 #3 ``` 6 314159265 358979323 846264338 327950288 419716939 93751058 209749445 ``` ### 样例输出 #3 ``` 7 ```

说明/提示

### 制约 - 输入都是整数。 - $ 3\ \leq\ N\ \leq\ 10^5 $ - $ 1\ \leq\ D\ \leq\ 10^9 $ - $ 1\ \leq\ R_i\ \leq\ 10^9 $ (部员 $ 1 $, 部员 $ 2 $, 部员 $ 5 $), (部员 $ 2 $, 部员 $ 3 $, 部员 $ 4 $), (部员 $ 2 $, 部员 $ 4 $, 部员 $ 5 $) 有三种部员组合方式。 没有满足条件的部员组合方式