# | Time | Username | Problem | Language | Result | Execution time | Memory |
---|---|---|---|---|---|---|---|
668605 | alvingogo | Scales (IOI15_scales) | C++14 | 0 ms | 0 KiB |
This submission is migrated from previous version of oj.uz, which used different machine for grading. This submission may have different result if resubmitted.
#include <bits/stdc++.h>
#pragma GCC optimize("Ofast")
#define AquA cin.tie(0);ios_base::sync_with_stdio(0);
#define fs first
#define sc second
#define p_q priority_queue
using namespace std;
void init(int T){
}
int fg(int a,int b,int c){
return getHeaviest(a,b,c);
}
int fm(int a,int b,int c){
return getMedian(a,b,c);
}
int fl(int a,int b,int c){
return getLightest(a,b,c);
}
int nx(int a,int b,int c,int d){
return getNextLightest(a,b,c,d);
}
vector<int> st(int a,int b,int c,int d){
vector<int> g(4);
g[0]=a;
g[1]=b;
g[2]=c;
g[3]=d;
return g;
}
vector<int> sort4(int d,int e,int f,int a){
int x=fm(d,e,f);
if(x!=d){
if(x==e){
swap(d,e);
}
else{
swap(d,f);
}
}
int y=fl(a,d,e);
if(y==e){
int z=nx(e,d,f,a);
if(z==e){
return st(e,d,f,a);
}
else if(z==f){
return st(e,d,a,f);
}
else{
return st(e,a,d,f);
}
}
else if(y==d){
int z=fg(d,e,a);
if(z==e){
return st(f,d,a,e);
}
else{
return st(f,d,e,a);
}
}
else{
int z=fm(a,f,d);
if(z==a){
return st(f,a,d,e);
}
else if(z==f){
return st(a,f,d,e);
}
else{
return st(a,e,d,f);
}
}
}
void orderCoins(){
int a=fl(1,2,3);
int b=fl(4,5,6);
vector<int> x;
for(int i=1;i<=6;i++){
if(i!=a && i!=b){
x.push_back(i);
}
}
auto h=query(x[0],x[1],x[2],x[3]);
auto y=query(a,b,x[0],x[1]);
int ans[6]={0};
ans[0]=y[0];
ans[1]=y[1];
ans[2]=y[2];
ans[3]=y[3];
ans[4]=h[2];
ans[5]=h[3];
answer(ans);
}