D. 电线杆

内存限制:256 MiB 时间限制:1000 ms 标准输入输出
题目类型:传统 评测方式:文本比较

题目描述

你要将若干个木材拼接成一个电线杆。总共有 n 段木材,第 i 段木材可以拼接在第 j 段木材后面当且仅当 a_i−a_j≤k ,并且每段木材都要用到。

一共有多少种合法的拼接方案?两种方案不一样当且仅当拼接的顺序不同。

求方案数模 1004535809 之后的结果。

输入格式

第一行两个整数 n,k。

第二行 n 个整数,第 i 个数表示 a_i

输出格式

一个整数表示答案。

样例

样例输入 #1

5 3
1 2 3 4 5

样例输出 #1

96

样例输入 #2

5 6
7 4 10 2 15

样例输出 #2

36

数据范围与提示

对于 10% 的数据,n≤10。

对于 45% 的数据,n≤20。

对于 70% 的数据,n≤70。

对于 100% 的数据, 2≤n≤7×10^5 ,h_i≤10^9,0≤k≤10^9