#include using namespace std; int main(){ int N, K, i, j, in, loop, max = 0, tmp = 0; vector num; bitset <20> flag; cin >> N >> K; loop = pow(2, N) - 1; while(cin >> in){ num.push_back(in); } for(i = 1; i <= loop; i++){ flag = i; tmp = 0; for(j = 0; j < N; j++){ if(flag[j] == 1){ tmp += num[j]; } } if(max <= tmp && tmp <= K){ max = tmp; } } cout << max << endl; return 0; }