#include <iostream>
#include <string>
#include <algorithm>
#include <cmath>
#include <vector>
#include <queue>
#include <deque>
using namespace std;
#define int long long
#define mn 55
#define inf 777777777777777777
#define ZLA "test"
#define mod 1000000007

int n,A,a[mn],b[mn],kq;

int dp(int x,int y,int z)
{
	if (x==0)
	{
		if ((y==0) && (z>0)) return 1;
		return 0;
	}
	return kq=dp(x-1,y,z)+dp(x-1,y+b[x],z+1);
}

void input()
{
	cin >> n >> A;
	for (int i=1;i<=n;i++)
	{
		cin >> a[i];
		b[i]=a[i]-A;
	}
}

void output()
{
	cout << dp(n,0,0);
}

signed main()
{
//	freopen(ZLA".inp", "r", stdin);
//	freopen(ZLA".out", "w", stdout);
	ios_base::sync_with_stdio(0);
	cin.tie(0);
	cout.tie(0);
	input();
	output();
	return 0;
}
