Submission

Status:

[PPPPPPPPPPPPPPP]

Subtask/Task Score:

{100/100}

Score: 100

User: Few500

Problemset: laracroft

Language: cpp

Time: 0.003 second

Submitted On: 2026-03-25 13:13:36

#include<iostream>
#include<vector>
#include<algorithm>
using namespace std;

int main(){
    ios_base::sync_with_stdio(false);
    cin.tie(NULL);

    int n, w;
    cin >> n >> w;
    vector<int> val(n);
    vector<int> wgt(n);
    for(int i=0; i<n; i++)
        cin >> val[i];
    for(int i=0; i<n; i++)
        cin >> wgt[i];

    vector<int> dp(w+1, 0);
    for(int i=0; i<n; i++)
        for(int j=w; j >= wgt[i]; j--)
            dp[j] = max(dp[j], dp[j - wgt[i]] + val[i]);

    int max_val = dp[w];
    int min_wgt = 0;
    for(int i=0; i<=w; i++)
        if(dp[i] == max_val){
            min_wgt = i;
            break;
        }
    
    cout << max_val << ' ' << min_wgt;
    return 0;
}