CF825C Multi-judge Solving

题目描述

Makes 在 Decoforces 以及许多其他不同的在线评测系统上刷题。每道题都有一个难度,为一个正整数。所有评测系统的难度标准都是一样的(难度为 $d$ 的题目的难度在任何评测系统上都一样)。 Makes 选出了 $n$ 道 Decoforces 的题目要做,难度分别为 $a_{1}, a_{2}, ..., a_{n}$。他可以按任意顺序做这些题。但是,他只有在已经做出过一道难度不小于 $\left\lceil\frac{a_i}{2}\right\rceil$ 的题目的前提下,才能做第 $i$ 道难度为 $a_i$ 的题(无论这道题是在哪个评测系统上的)。 在刷这些题目之前,Makes 已经做出过的题目中难度最大的是 $k$。 在题设条件下,有时候Makes 无论如何安排顺序都做不完所有题,因此他希望做 Decoforces 中选出来的题目时,在其他评测系统上再做一些题目,以便能完成 Decoforces 上的所有题。 对于每一个正整数 $y$,在 Decoforces 以外的某个评测系统上都一定存在一道难度为 $y$ 的题目。 Makes 可以在任何时间在任意评测系统上做题。 由于时间有限,他希望你计算,为了完成 Decoforces 上选定的所有题,最少需要在其他评测系统上额外做多少题。

输入格式

第一行包含两个整数 $n$、$k$($1 \leq n \leq 10^{3}$,$1 \leq k \leq 10^{9}$)。 第二行包含 $n$ 个用空格分隔的整数 $a_{1}, a_{2}, ..., a_{n}$($1 \leq a_{i} \leq 10^{9}$)。

输出格式

输出 Makes 为了完成所有 Decoforces 上选出的题,最少需要在其他评测系统上做的题目数量。

说明/提示

在第一个样例中,Makes 首先可以做难度为 1 和 2 的题。为了做难度为 9 的题,他需要先做一道难度至少为 5 的题。在其他评测系统上有难度为 5 或 6 的题,做任意一道即可,从而能做第 3 题。 在第二个样例中,他一开始就可以做所有的题目。