#include "nile.h"
#include <bits/stdc++.h>
using namespace std;
#define ll long long
std::vector<long long> calculate_costs(std::vector<int> W, std::vector<int> A, std::vector<int> B, std::vector<int> E) {
int N = W.size();
int Q = E.size();
ll sum = 0;
for (int i=0; i<N; i++) sum += B[i];
ll ans = LLONG_MAX;
if (N%2 == 0) ans = sum;
else for (int i=0; i<N; i++) ans = min(ans, sum - B[i] + A[i]);
vector<ll> dp(N);
dp[0] = A[0];
if (1<N) dp[1] = B[0] + B[1];
for (int i=2; i<N; i++) dp[i] = min(dp[i-1] + A[i], dp[i-2] + B[i] + B[i-1]);
vector<ll> ret(Q);
for (int i=0; i<Q; i++) {
if (E[i]==1) ret[i] = dp[N-1];
else ret[i] = ans;
}
return ret;
}
# | 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... |