#include<iostream> #include<algorithm> using namespace std; const int N = 505, M = 6005; int p[N],v[N],s[N],f[M]={0}; int main(){ int n,m; cin>>n>>m; for (int i=1; i<=n; i++) cin>>p[i]>>v[i]>>s[i]; for (int i=1; i<=n; i++) for (int j=m; j>=0; j--) for (int k=0; k<=s[i]; k++) if (j-k*p[i]>=0) f[j]=max(f[j],f[j-k*p[i]]+k*v[i]); cout<<f[m]<<endl; return 0; } /************************************************************** Problem: 2077 User: admin Language: C++ Result: Accepted Time:73 ms Memory:2104 kb ****************************************************************/