void 买到宝石()
{//缘由https://ask.csdn.net/questions/7485570?spm=1005.2025.3001.5141 3 10 1 2 3 4 17 1 2 3 4
int n = 0, x = 0, d = 0, xiao = 0, g = 0, a[106]{};
std::cin >> n >> x;
d = n;
while (n)std::cin >> a[--n];
while (x)
if (++n < d)
if (a[n] < a[xiao])
xiao = n;
else
;
else
if (x >= a[xiao])
x -= a[xiao], a[xiao] *= 2, ++g, n = 0;
else
x = 0;
std::cout << g << std::endl;
}