#include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include using namespace std; typedef long long int ll; typedef pair P; const int INF=1e8; int main() { int n, c; cin>>n>>c; int l[50], w[50]; for(int i=0; i>l[i]; for(int i=0; i>w[i]; if(n<=2){ cout<<0<l[j] && l[j]l[k] && l[i]!=l[k] && w[i]+w[j]+w[k]<=c){ dp[j][k][w[i]+w[j]+w[k]]=max(dp[j][k][w[i]+w[j]+w[k]], l[i]+l[j]+l[k]); } } } } for(int k=0; kl[j] && l[j]l[m] && l[i]!=l[m] && k+w[m]<=c){ dp[j][m][k+w[m]]=max(dp[j][m][k+w[m]], dp[i][j][k]+l[m]); } } } } } int ans=0; for(int i=0; i