#include<bits/stdc++.h> using namespace std; const int N = 2e3 + 10; int n , m , v[N] , dp[N] , w[N] , s[N] , k = 1 , vi , wi , si; int main(){ cin >> n >> m; for(int i = 1 ; i <= n ; i++){ cin >> vi >> wi >> si; for(int j = 1 ; j <= si ; j++){ v[k] = vi ; w[k] = wi ; k++ ; } } for(int i = 1 ; i <= k - 1 ; i++){ for(int j = m ; j >= v[i] ; j--){ dp[j] = max(dp[j] , dp[j-v[i]] + w[i]); } } cout << dp[m]; return 0; } //30 40 50 //20 30 50 //20 25 30 /************************************************************** Problem: 1889 User: Hawthorne Language: C++ Result: Runtime Error ****************************************************************/