#include <bits/stdc++.h>
#define rep(i,n)for(int i=0;i<(n);i++)
using namespace std;
typedef long long ll;
typedef pair<int,int>P;

const int INF=0x3f3f3f3f;
const ll INFL=0x3f3f3f3f3f3f3f3f;
const int MOD=1000000007;

int a[20];
int dp[1<<20];

int main(){
	int n,K;cin>>n>>K;
	rep(i,n){
		scanf("%d",&a[i]);
	}
	rep(i,1<<n){
		int sum=0;
		rep(j,n){
			if(i>>j&1)sum+=a[j];
		}
		if(sum==K)dp[i]=1;
	}
	rep(i,n)rep(j,1<<n){
		if(!(j>>i&1))dp[j|1<<i]+=dp[j];
	}
	int Min=INT_MAX;
	rep(i,1<<n){
		int x=((1<<n)-1)^(i);
		if(dp[x]==0){
			Min=min(Min,__builtin_popcount(i));
		}
	}
	cout<<Min<<endl;
}
