#include <iostream>
using namespace std;
int d[101][9999];
// d[i][j] 表示在 [1, i] 道菜中选,满足共需j元,有多少种选法
int main() {
int n,m,i,j;
cin >> n >> m;
int a[n+1];
for (i = 1; i <= n; i++) {
cin >> a[i];
}
d[1][a[1]] = 1;
for (i = 2; i <= n; i++) {
for (j = 1; j <= m; j++) {
if (a[i] < j) d[i][j] = d[i-1][j] + d[i-1][j-a[i]];
else if (a[i] == j) d[i][j] = d[i-1][j] + 1;
else d[i][j] = d[i-1][j];
}
}
cout << d[n][m] <<endl;
return 0;
}