#include using namespace std; const int c=405; long long n, k, t[c], dp[c][c], ans[c], mod=167772161; int main() { ios_base::sync_with_stdio(false); cin >> n >> k; for (int i=1; i<=n; i++) { cin >> t[i]; } dp[0][0]=1; for (int i=1; i<=n; i++) { for (int ert=k-t[i]; ert>=0; ert--) { for (int db=i-1; db>=0; db--) { dp[ert+t[i]][db+1]=(dp[ert+t[i]][db+1]+dp[ert][db])%mod; } } } /*for (int ert=0; ert<=k; ert++) { for (int db=0; db<=n; db++) { cout << dp[ert][db] << " "; } cout << "\n"; }*/ for (int i=1; i<=n; i++) { for (int ert=k-t[i]+1; ert<=k; ert++) { for (int db=1; db=0 && db2>=0) { ans[db]+=dp[val][db2]*sgn; val-=t[i], db2--, sgn*=-1; } } } for (int j=1; j