
这都能AC
#include<bits/stdc++.h>
#define int long long
using namespace std;
void read(int &x){
x=0;bool f=0;char ch=getchar();
while(ch>'9'||ch<'0'){
if(ch=='-')f=1;
ch=getchar();
}do{x=(x<<3)+(x<<1)+(ch^48);ch=getchar();}while(ch>='0'&&ch<='9');
x=f?-x:x;
}
int n,m,v,w,u,dp[40001];
signed main(){
cin>>n>>m;
for(int i=1;i<=n;i++){
cin>>v>>w>>u;
for(int k=m;k>=w;k--){
for(int j=1;j<=u&&j*w<=k;j++)dp[k]=max(dp[k],dp[k-w*j]+v*j);
}
}cout<<dp[m];
return 0;
}