#include "rotate.h"
#include <bits/stdc++.h>
using namespace std;
struct rod{
int ang;
int ind;
};
bool cmp(rod a, rod b){
return (a.ang<b.ang);
}
void energy(int n, vector<int> v){
int temp1,temp2;
vector<int> t(n);
vector<rod> rods(n);
for (int i=0; i<n; i++){
temp1=v[i];
temp2=v[i]-50000;
if (abs(temp2)<temp1){
temp1=temp2;
}
rods[i]={temp1,i};
}
sort(rods.begin(),rods.end(),cmp);
for (int i=n/2; i<n; i++){
rods[i]={rods[i].ang-25000,rods[i].ind};
}
sort(rods.begin(),rods.end(),cmp);
for (int i=0; i<rods.size(); i++){
t[i]=rods[i].ind;
}
while (rods.size()){
int c=rods.rbegin()->ang;
if (c!=0){
// rotate({rods.rbegin()->ind},-c);
rotate(t,-c);
for (int i=0; i<rods.size()-1; i++){
rods[i].ang-=c;
}
}
t.pop_back();
rods.pop_back();
}
}
# | 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... |