#2388. 混乱的奶牛

混乱的奶牛

题目描述

FarmerJohn\red{Farmer John}N(4<=N<=16)\red{N(4 <= N <= 16)}头奶牛中的每一头都有一个唯一的编号Si(1<=Si<=25,000).\red{S_i (1 <= S_i <= 25,000). }

奶牛为她们的编号感到骄傲, 所以每一头奶牛都把她的编号刻在一个金牌上, 并且把金牌挂在她们宽大的脖子上. 奶牛们对在挤奶的时候被排成一支"混乱"的队伍非常反感. 如果 一个队伍里任意两头相邻的奶牛的编号相差超过K(1<=K<=3400),\red{K (1 <= K <= 3400), }它就被称为是混乱的.

比如说,当N=6,K=1\red{N = 6, K = 1}时, 1,3,5,2,6,4\red{1, 3, 5, 2, 6, 4 }就是一支"混乱"的队伍, 但是 1,3,6,5,2,4\red{1, 3, 6, 5, 2, 4 }不是(\red{(}因为5\red{5}6\red{6}只相差1).\red{1). }

那么, 有多少种能够使奶牛排成"混乱"的队伍的方案呢?

输入格式

1\red{1 }行: 用空格隔开的两个整数N\red{N}K\red{K}

2..N+1\red{2..N+1 }行: 第i+1\red{i+1}行包含了一个用来表示第i\red{i}头奶牛的编号的整数: Si\red{S_i}

输出格式

1\red{1 }行: 只有一个整数, 表示有多少种能够使奶牛排成"混乱"的队伍的方案. 答案保证是 一个在64\red{64}位范围内的整数.

样例

输入样例

4 1
3
4
2
1

输出样例

2

提示

输出解释:

两种方法分别是:

3142\red{3 1 4 2}

2413\red{2 4 1 3}