#include #include #include #include #include #include #include #include #include #include using namespace std; #ifdef _WIN32 #include #endif int main() { int n, k, max1 = 0; cin >> n >> k; vector v(n); for (int i = 0; i < n; i++) cin >> v[i]; for (int tmp = 0; tmp < (1 << n); tmp++){ bitset<20> s(tmp); int sum1 = 0; for (int i = 0; i < n; i++){ if (s.test(i)) sum1 += v[i]; } if (sum1 <= k) max1 = max(max1, sum1); } cout << max1 << endl; }