Submission

Status:

[-SSSSSSSSSSSSSS]

Subtask/Task Score:

{0/100}

Score: 0

User: House123

Problemset: laracroft

Language: cpp

Time: 0.002 second

Submitted On: 2026-03-12 02:10:25

#include <bits/stdc++.h>
using namespace std;
vector<int> dp(2e3+1);
int main(){
    ios_base::sync_with_stdio(false), cin.tie(0);
    int n,w;
    cin >> n >> w;
    vector<int> weight(n);
    vector<int> val(n);
    for(auto &k : weight) cin >> k;
    for(auto&k : val) cin >> k;

    for(int i = 0; i < n;i++){
        for(int j = w; j >= weight[i];j--){
            dp[j] = max(dp[j],dp[j-weight[i]] + val[i]);
        }
    }
    int max_val = dp[w];
    int index;
    for(int i = w; i >= 0;i--){
        if(dp[i] == max_val){
            index = i;
        } else {
            break;
        }
    }
    cout << dp[w] << " " << index;
    return 0;
}