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;
}
}