#include<stdio.h>
void sort_max(int h[20000],int i){
int t;
if(i>1){
for(int j=i;j>=1;j--){
if(h[j]>h[j-1]){
t=h[j-1];
h[j-1]=h[j];
h[j]=t;
}
}
}
}
int main(){
int n,b;
scanf("%d %d",&n,&b);
int h[20009];
for(int i=1;i<=n;i++){
scanf("%d",&h[i]);
sort_max(h,i);
}
int sum=0;
int count=0;
for(int i=1;sum<b;i++){
count=i;
sum=sum+h[i];
}
printf("%d",count);
return 0;
}