#include <iostream>
#include <vector>
#include <string>
#include <algorithm>
#include <queue>
#include <set>
#define rep(i,n) for(int (i)=0;(i)<(n);(i)++)
#define rep1(i,n) for(int i=1;i<=(int)(n);i++)

using namespace std;
typedef long long int lli;

//dp[i][j]. 偶奇でi番目までで部分和j-2550になる通り数
lli dp[2][5100];

int main(){
	lli N,A;
	cin>>N>>A;
	lli x[50];
	rep(i,50){
		cin>>x[i];
		x[i]-=A;
	}
	dp[1][2550]=1;
	
	rep(i,N){
		lli t=(i&1);
		rep(j,5000) dp[t][j]=dp[t^1][j]+dp[t^1][j-x[i]];
	}
	
	cout<<dp[(N-1)&1][2550]-1;
}