1228 - 连续子段的差异
描述

给出一个包括N个元素的整数数组A,包括A本身在内,共有 (N+1)*N / 2个非空子段。例如:1 3 2的子段为{1} {3} {2} {1 3} {3 2} {1 3 2}。在这些子段中,如果最大值同最小值的差异不超过K,则认为这是一个合格的子段。给出数组A和K,求有多少符合条件的子段。例如:3 5 7 6 3,K = 2,符合条件的子段包括:{3} {5} {7} {6} {3} {3 5} {5 7} {7 6} {5 7 6},共9个。

输入

第1行:2个数N, K(1 <= N <= 50000, 0 <= K <= 10^9) 第2 ~ N+1行:每行1个数,对应数组的元素Ai(0 <= A[i] <= 10^9)


输出

输出符合条件的子段数量。


样例

输入

5 2
3
5
7
6
2

输出

9
标签
题目参数
时间限制 1 秒
内存限制 128 MB
提交次数 1
通过次数 1