50分不会优化的屑
查看原帖
50分不会优化的屑
574883
fish_jiang楼主2023/3/4 14:09
#include <bits/stdc++.h>
using namespace std;
int n,V;
int v[100005],w[100005],m[100005];
long long f[2][10000005];	
long long res=0;
int main(){
	cin>>n>>V;
	for(int i=1;i<=n;i++){
		cin>>v[i]>>w[i]>>m[i];
	}
	for(int i=1;i<=n;i++){
		for(int j=0;j<=V;j++){
			f[i%2][j]=f[(i-1)%2][j];
		}
		for(int j=w[i];j<=V;j++){
			for(int k=1;k<=j/w[i]&&k<=m[i];k++){
				f[i%2][j]=max(f[i%2][j],f[(i-1)%2][j-w[i]*k]+v[i]*k);
			}
		}
	}	
	for(int j=0;j<=V;j++){
		res=max(res,f[n%2][j]);
	}	
	cout<<res<<endl;
}
2023/3/4 14:09
加载中...