Submission
Status:
[-SSSSSSSSSSSSSS]
Subtask/Task Score:
{0/100}
Score: 0
User: krittaphot
Problemset: laracroft
Language: cpp
Time: 0.002 second
Submitted On: 2026-03-06 20:10:07
#include <bits/stdc++.h>
using namespace std;
int main()
{
int n,m;
cin >> n >> m;
vector<int> val(n+1);
vector<int> cost(n+1);
for(int i = 1;i<=n;i++){
cin >> val[i];
}
for(int i = 1;i<=n;i++){
cin >> cost[i];
}
vector<vector<int>> dp(n+1,vector<int> (m+1,0));
for(int i = 1;i<=n;i++){
for(int j = 0;j<=m;j++){
dp[i][j] = dp[i-1][j];
if(j-cost[i] >= 0)
dp[i][j] = max(dp[i-1][j],dp[i-1][j-cost[i]] + val[i]);
}
}
int l = 1;
while(dp[n][m] == dp[n][m-l]){
l++;
}
cout << dp[n][m] << " " << m-l+1;
}