//{{{ #include using namespace std; #define rep(...) repN((__VA_ARGS__,rep3,rep2,loop,~))(__VA_ARGS__) #define loop(n) rep2(_loop_,n) #define rep2(i,n) rep3(i,0,n) #define rep3(i,begin,end) for(int i=(int)(begin),i##_end=(int)(end);i> N >> K; int A[20]; rep(i, N){ cin >> A[i]; } int ans = 0; rep(i, 1 << N){ int sum = 0; rep(j, N){ if((i >> j) & 1){ sum += A[j]; } } if(sum <= K) ans = max(ans, sum); } printf("%d\n", ans); return 0; }