80分求调
查看原帖
80分求调
1407837
zhouyunxiang0807楼主2025/1/19 20:32
#include<bits/stdc++.h>
using namespace std;

struct thing{
	int a,b;
}t[10000000];
int n,m,num,dp[400000];
int main(){
    scanf("%d%d",&n,&m);
    for(int i=1;i<=n;i++){
    	int x,y,z;
    	scanf("%d%d%d",&x,&y,&z);
    	for(int j=1;j<=z;j++){
    		num++;
    		t[num].a=x,t[num].b=y;
		}
	}
	for(int i=1;i<=num;i++){
		for(int j=m;j>=t[i].b;j--){
			dp[j]=max(dp[j],dp[j-t[i].b]+t[i].a);
		}
	}
	cout<<dp[m];
        return 0;
}
2025/1/19 20:32
加载中...