#include<bits/stdc++.h>

using namespace std;

int n,k;

priority_queue<int,vector<int>,greater<int>> q;

int main()
{
    cin>>n>>k;
    for(int i=1;i<=n;i++)
    {
        int x;
        cin>>x;
        q.push(x);
    }
    int cnt=0;
    while(k)
    {
        int temp=q.top();
        q.pop();
        k-=temp;
        if(k<0) break;
        cnt++;
        q.push(temp*2);
    }
    cout<<cnt;
    return 0;
}