Marmot found a row with n pillars. The i -th pillar has the height of h i meters. Starting from one pillar i 1 , Marmot wants to jump on the pillars i 2 , ..., i k . (1 ≤ i 1 i 2 i k ≤ n ). From a pillar i Marmot can jump on a pillar j only if i j and h i - h j ≥ d , where x is the absolute value of the number x . Now Marmot is asking you find out a jump sequence with maximal length and print it.
输入描述:
The first line contains two integers n and d (1 ≤ n ≤ 105, 0 ≤ d ≤ 109).The second line contains n numbers h1, h2, ..., hn (1 ≤ hi ≤ 1015).


输出描述:
The first line should contain one integer k, the maximal length of a jump sequence.The second line should contain k integers i1, i2, ..., ik (1 ≤ i1 i2 ik ≤ n), representing the pillars' indices from the maximal length jump sequence.If there is more than one maximal length jump sequence, print any.
示例1

输入

5 2<br />1 3 6 7 4<br />10 3<br />2 1 3 6 9 11 7 3 20 18<br />

输出

4<br />1 2 3 5 <br />6<br />1 4 6 7 8 9 <br />

备注:
In the first example Marmot chooses the pillars 1, 2, 3, 5 with the heights 1, 3, 6, 4. Another jump sequence of length 4 is 1, 2, 4, 5.
加载中...