#include using namespace std; typedef long long ll; templatebool chmax(T &a, const T &b) { if (abool chmin(T &a, const T &b) { if (b>N>>M; for(int i=0;i>a>>b>>c; for(int j=0;j<=M;j++){ chmax(dp[2*(i+1)][j],dp[2*i][j]); if(j+a<=M) chmax(dp[2*i+1][j+a],dp[2*i][j]+b*c); } for(int j=a-b;j<=M;j++){ chmax(dp[2*i+1][j],dp[2*i+1][j-(a-b)]+b*c); } for(int j=0;j<=M;j++) chmax(dp[2*(i+1)][j],dp[2*i+1][j]); } ll ma=0; for(int j=1;j<=M;j++){ chmax(ma,dp[2*N][j]); cout<