#include<iostream>
using namespace std;
const int N = 110;
int f[N];
int main(){
int n, m; cin >> n >> m;
f[0] = 1; // 这一步开始没想明白
for(int i=0; i<n; i++){
int a; cin >> a;
for(int j=m;j>=a;j--){
f[j] = f[j] + f[j-a];
}
}
cout << f[m] << endl;
return 0;
}