#include using namespace std; int main() { int n, k, x; cin >> n >> k; vector vec; vector empty_vec; for (int i = 0; i < n; i++) { cin >> x; vec.push_back(x); } int output[n][n - 1] = {}; //for (int i = 1; i < n; i++) //{ for (int j = 0; j < n; j++) { vector vec1 = vec; vec1.erase(vec1.begin() + j); int num = pow(2, vec1.size()); vector > vecs; for (int ii = 0; ii < num; ii++) { vecs.push_back(empty_vec); for (int ij = 0; ij < vec1.size(); ij++) { if ((ii & (1 << ij)) != 0) { vecs[ii].push_back(vec1[ij]); } } } /*for (int z = 0; z < vecs.size(); z++) { for (int x = 0; x < vecs[z].size(); x++) cout << " " << vecs[z][x]; cout << endl; } cout << endl;*/ for (int i = 1; i < n; i++) { int res = 0; for (int ji = 0; ji < vecs.size(); ji++) { if (vecs[ji].size() == i) { int sum = 0; for (int jj = 0; jj < vecs[ji].size(); jj++) { sum += vecs[ji][jj]; } if (sum <= k && sum + vec[j] > k) res++; } } output[j][i - 1] = res; } } //} for (int i = 0; i < n; i++) { for (int j = 0; j < n - 1; j++) { if (j) cout << " "; cout << output[i][j]; } cout << endl; } return 0; }