#include "nile.h"
#include <bits/stdc++.h>
#define ll long long
using namespace std;
vector<ll> calculate_costs(vector<int>w,
vector<int>a,
vector<int>b,
vector<int>e){
int n=w.size();
int q=e.size();
sort(w.begin(),w.end());
map<int,vector<int>>ord;
for(int i=0;i<q;i++){
ord[e[i]].push_back(i);
}
sort(e.begin(),e.end());
int l[n],r[n],sz[n],nxt[n];
for(int i=0;i<n;i++){
l[i]=r[i]=w[i];
sz[i]=1;
nxt[i]=i+1;
}
vector<ll>res(q);
for(int d:e){
if(ord[d].empty()){
continue;
}
ll cost=0;
int i=0;
while(i<n){
while(1){
int j=nxt[i];
if(j==n||l[j]-r[i]>d){
break;
}
r[i]=r[j];
sz[i]+=sz[j];
nxt[i]=nxt[j];
}
cost+=sz[i]+sz[i]%2;
i=nxt[i];
}
for(int i:ord[d]){
res[i]=cost;
}
ord[d].clear();
}
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... |