Submission

Status:

[PPPPPPPPPPPPPPP]

Subtask/Task Score:

{100/100}

Score: 100

User: ssss

Problemset: laracroft

Language: cpp

Time: 0.003 second

Submitted On: 2026-03-09 23:30:47

#include<bits/stdc++.h>
using namespace std;

int main(){
    int n,f;
    cin>>n>>f;
    int val[n],wt[n];
    for(int i=0;i<n;i++){
        cin>>val[i];
    }
    for(int i=0;i<n;i++){
        cin>>wt[i];
    }
    vector<int>dp(f+1);
    for(int i=0;i<n;i++){
        for(int j=f;j>=wt[i];j--){
            dp[j] = max(dp[j],dp[j-wt[i]]+val[i]);
        }
    }
    int mxv=INT_MIN,mnw=INT_MAX;
    for(int i=0;i<=f;i++){
        if(mxv<dp[i]){
            mxv = dp[i];
            mnw = i;
        }
    }
    if(mxv==INT_MIN){
        cout<<"0 0";
    }else{
        cout<<mxv<<" "<<mnw;
    }
}