#include "nile.h"
#include <bits/stdc++.h>
using namespace std;
std::vector<long long> calculate_costs(std::vector<int> W, std::vector<int> A,std::vector<int> B, std::vector<int> E)
{
vector<pair<long long,long long>> vec;
for(long long i=0;i<W.size();i++)
{
vec.push_back({W[i],A[i]-B[i]});
}
sort(vec.begin(),vec.end());
long long sum=0;
for(auto it : A)
sum+=it;
vector<long long> res;
for(auto it : E)
{
long long D=it;
long long dp[W.size()]={};
dp[0]=0;
for(long long i=1;i<vec.size();i++)
{
dp[i]=dp[i-1];
if(vec[i].first-vec[i-1].first<=D)
{
if(i==1)
{
dp[i]=vec[i].second+vec[i-1].second;
}
else
dp[i]=max(dp[i],vec[i].second+vec[i-1].second+dp[i-2]);
if(i>=2 && vec[i].first-vec[i-2].first<=D)
{
if(i==2)
{
dp[i]=vec[i].second+vec[i-2].second;
}
else
dp[i]=max(dp[i],vec[i].second+vec[i-2].second+dp[i-3]);
}
}
}
res.push_back(sum-dp[vec.size()-1]);
}
return res;
}
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |