#include<stdio.h>
int n,x,a[110];
int main()
{
	scanf("%d %d",&n,&x);
	for(int i=1;i<=n;i++)
	scanf("%d",&a[i]);
	for(int i=1;i<n;i++)
	for(int j=i+1;j<=n;j++)
	if(a[i]>a[j])
	{
		int t=a[i];
		a[i]=a[j];
		a[j]=t;
	}
	int s=0;
	for(int i=1;i<=n;i++)
	{
		if(s+a[i]>x)	
		{
		printf("%d",i-1);
		break;
		}
		s+=a[i];
		if(i==n&&s<=x)
		printf("%d",i);
		else
		if(i==n)
		printf("%d",i-1);
	}
	return 0;
}
/**************************************************************
	Problem: 1456
	User: admin
	Language: C
	Result: Accepted
	Time:28 ms
	Memory:1144 kb
****************************************************************/