#include "rotate.h"
#include <bits/stdc++.h>
using namespace std;
void energy(int n, vector<int> v){
int x = 50000;
for(int i:v){
x = min(i,x);
}
for(int i=0;i<n;i++){
v[i] -= x;
}
vector<pair<int,int>> l;
for(int i=0;i<n;i++){
l.push_back({v[i],i});
}
sort(l.begin(),l.end());
if(n%2==0){
if(l[n/2].first>25000){
for(int i=0;i<=n/2;i++){
if(l[i].first>25000){
rotate({l[i].second},75000-l[i].first);
l[i].first = 25000;
}
}
}
else if(l[n/2].first<25000){
for(int i=n-1;i>=n/2;i--){
if(l[i].first<25000){
rotate({l[i].second},25000-l[i].first);
l[i].first = 25000;
}
}
}
}
for(int i=1;i<=(n-1)/2;i++){
int j = i+n/2;
if(l[j].first-l[i].first>25000){
rotate({l[j].second},l[i].first+75000-l[j].first);
}
else{
rotate({l[i].second},l[j].first-l[i].first-25000);
}
}
}
# | 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... |