// 每日一题 小顶堆
#include <bits/stdc++.h>
using namespace std;
int main() {
int n, k;
cin >> n >> k;
priority_queue<int, vector<int>, greater<int>> heap;
for (int i = 0; i < n; i++) {
int num;
cin >> num;
heap.push(num);
}
int sum = 0, day = 0;
if (heap.top() > k) {
cout << 0 << endl;
}
while (k >= sum) {
sum += heap.top();
int tmp = heap.top() * 2;
heap.pop();
heap.push(tmp);
day++;
}
cout << day - 1 << endl;
}

京公网安备 11010502036488号