#include<iostream>
#include<cstdio>
#include<iomanip>
#include<cstdlib>
#include <algorithm>
#include<string.h>
#include<math.h>
#define llu unsigned long long
using namespace std;
int value[50010];
int main()
{
cout << fixed << setprecision(0);
//cout << setw(8) << setiosflags(ios::left);
int n,W;
cin >> n >> W ;
while(n--)
{
int w,p,c;
cin >> w >> p >> c;
for(int i=1;i<=c;i++)
for(int j=W;j>=i*w;j--)
{
value[j]=max(value[j],value[j-w]+p);
}
}
cout << value[W] << endl ;
return 0;
}
多重背包(DP)C/C++
最新推荐文章于 2024-05-08 18:23:30 发布