#include using namespace std; int main() { int N, K; cin >> N >> K; vector A(N); for (int i=0; i> A[i]; vector> dpl(N + 1, vector(K + 1, false)); vector> dpr(N + 1, vector(K + 1, false)); dpl[0][0] = dpr[N][0] = true; for (int i=0; i=0; --i) { dpr[i] = dpr[i + 1]; for (int j=0; j+A[i]<=K; ++j) dpr[i][j + A[i]] = dpr[i][j + A[i]] || dpr[i + 1][j]; } if (!dpl[N][K]) { puts("-1"); return 0; } int ans = 0; for (int i=0; i