#P1393. 节日派对

节日派对

题目描述

薯条哥携带一件价值为xx的礼物参加了一个节日派对。除薯条哥外在场的有nn个人,第ii个人的当前持有的礼物价值为aia_i

薯条哥可以和任意当前持有礼物价值比薯条哥低的人交换礼物。

请问最少经过多少次交换,可以使得nn个人持有的礼物价值形成单调不减的数列。

输入描述

第一行输入两个数字n,x(1n2×106,1x109)n,x(1\le n\le 2\times 10^6,1\le x\le 10^9)nn代表人数,xx代表薯条哥最多持有的礼物价值。

第二行nn个数字a1,a2,...an(1ai109)a_1,a_2,...a_n(1\le a_i\le 10^9),代表其他所有人最初持有的礼物价值

输出描述

输出一个数字,代表为了达成目标最少进行的交换次数。

如果无法达成目标则输出1-1

样例

输入

5 5
2 1 3 2 4

输出

3

样例解释

最初薯条哥的礼物价值为55

第 1 次选择和第 5 个人交换。交换后薯条哥的礼物价值为 4,其他人为[2,1,3,2,5][2,1,3,2,5]

第 2 次选择和第 4 个人交换。交换后薯条哥的礼物价值为 2,其他人为[2,1,3,4,5][2,1,3,4,5]

第 3 次选择和第 2 个人交换。交换后薯条哥的礼物价值为 1,其他人为[2,2,3,4,5][2,2,3,4,5]