#include using namespace std; using ll = long long; int main(){ int n,m,k; cin>>n>>m>>k; vector a(n); for(int i = 0;i>a[i]; } a.push_back(0); n++; vector use; if(k<=3){ ll ans = 0; for(int i = 0;i=2) now += a[j]; if(k==3) now += a[l]; if(now<=m) ans = max(now,ans); } cout<=5) now += a[j]; if(k==6) now += a[l]; ll want = m - now; if(want<0) continue; int ni = upper_bound(use.begin(),use.end(),want) - use.begin(); ni--; assert(ni