| # | Time | Username | Problem | Language | Result | Execution time | Memory |
|---|---|---|---|---|---|---|---|
| 1333792 | marzuq01 | Nile (IOI24_nile) | C++20 | 0 ms | 0 KiB |
#include "nile.h"
#include <bits/stdc++.h>
using namespace std;
#define lint long long
std::vector<long long> calculate_costs(std::vector<int> W, std::vector<int> A,
std::vector<int> B, std::vector<int> E) {
lint n = W.size();
lint q = E.size();
//wi = i+1
lint sum = 0ll;
for (auto i: B) sum += i;
vector<lint> arr(n);
for (lint i = 0; i < n;i++) arr[i] = A[i] - B[i];
vector<int> reduced;
for (int i = 0;i < n;i+=2) reduced.push_back(arr[i]);
sort(arr.begin(),arr.end());
sort(reduced.begin(),reduced.end());
vector<int> ans(q);
for (int i = 0; i < q;i++) {
if (n % 2 == 0 || E[i] >= 2) ans[i] = sum + arr[0];
else ans[i] = sum + reduced[0];
}
return ans;
}
