#include #define rep(i,n) for(int i=0;i<(n);++i) #define all(a) (a).begin(),(a).end() #define dunk(a) cout << (a) << endl using namespace std; typedef long long ll; int main() { ios::sync_with_stdio(false); cin.tie(0); int n, k; cin >> n >> k; vector A(n); rep(i, n) cin >> A[i]; int ans = 0; for (int bit = 0; bit < (1 << n); ++bit) { int res = 0; for (int i = 0; i < n; ++i) { if (bit & (1 << i)) { res += A[i]; } } if (res <= k) ans = max(ans, res); } dunk(ans); return 0; }