#include <bits/stdc++.h>
using namespace std;
using ll = long long int;
using vi = vector<int>;
using vvi = vector<vector<int>>;
using vll = vector<ll>;
using vpii = vector<pair<int,int>>;
#define pb push_back
#define endl '\n'
#define ff first
#define ss second
#define all(a) a.begin(),a.end()
const ll MOD = 10e9;
vector<long long> calculate_costs(vi W, vi A, vi B, vi Q){
ll n = W.size();
vector<long long> result(Q.size());
for (int i = 0; i < Q.size(); i++){
ll res = 0;
if (Q[i] > 1 || (Q[i] == 1 && n % 2 == 0)) {
if (n % 2 == 0){
for (int i = 0; i < n; i++){
res += B[i];
}
}
else {
ll extra = 1e18;
for (int i = 0; i < n; i++){
extra = min(extra, abs(1LL * A[i] - B[i]));
}
res += extra;
for (int i = 0; i < n; i++){
res += B[i];
}
}}
else if (Q[i] == 1 && n%2 == 1){
if (A.front() < A.back()) {
res += abs(A.front() - B.front());
}
else res += abs(A.back() - B.back());
for (int i = 0; i < n; i++){
res += B[i];
}
}
result[i] = res;
}
return result;
}