#include #include #include using namespace std; int N,K; long M; int A[100]; vectorf(int k) { vectorret; if(k>=0)ret.push_back(0L); if(k>=1) { for(int i=0;i=2) { for(int i=0;i=3) { for(int i=0;i>N>>M>>K; for(int i=0;i>A[i]; vectorF=f(K/2),G=f(K-K/2); long ans=0; int j=G.size()-1; for(int i=0;iM)j--; ans=max(ans,F[i]+G[j]); } cout<