1 条题解

  • -2
    @ 2023-4-1 15:53:20
    #include<。。。。。。>
    #define int long long
    using namespace std;
    int t,v,n,x,y,z,s;
    int f[-2001][1011];
    int a[10001],b[10001],c[10001];
    main(){
    	cin>>n>>v;
    	for(int i=1;i<=n;i++){
    		cin>>x>>y>>z;
    		a[i]=x;
    		b[i]=y;
    		c[i]=z;
    	}
    	for(int i=1;i<=n;i++){
    		for(int j=1;j<=v;j++){
    			f[i][j]=f[i-1][j];
    			for(int k=1;k<=c[i];k++){
    				if(a[i]*k<=j){
    					f[i][j]=max(f[i][j],f[i-1][j-a[i]*k]+b[i]*k);
    				}				
    			}
    		}
    	}
    	cout<<f[n][v];
    	return 0;
    }
    
    • 1

    信息

    ID
    500
    时间
    1000ms
    内存
    128MiB
    难度
    3
    标签
    递交数
    76
    已通过
    45
    上传者