#include "scales.h"
#include <bits/stdc++.h>
using namespace std;
void init(int T) {}
int w[6];
void orderCoins()
{
vector<int> v1,v2;
int x=getHeaviest(1,2,3);
int xx=getLightest(1,2,3);
v1= {xx,6-x-xx,x};
//x=getHeaviest(4,5,6);
//xx=getLightest(4,5,6);
//v2= {xx,15-x-xx,x};
v2={4,5,6};
pair<int,int> p[6];
p[3]= {1,-1};
p[4]= {2,-1};
p[5]= {3,-1};
int l=0;
for(int i=0; i<3; i++)
{
if(l==3)
{
p[i]= {l,i};
continue;
}
if(l==0)
{
x=getMedian(v1[0],v1[2],v2[i]);
if(x==v1[2])p[i]={3,i};
else if(x==v1[0])p[i]={0,i};
else
{
x=getLightest(v2[i],v1[1],v1[2]);
if(x==v2[i])p[i]={1,i};
else p[i]={2,i};
}
}
if(l==1)
{
x=getMedian(v1[1],v1[2],v2[i]);
if(x==v1[1])p[i]={1,i};
else if(x==v1[2])p[i]={3,i};
else p[i]={2,i};
}
if(l==2)
{
x=getHeaviest(v1[1],v1[2],v2[i]);
if(x==v2[i])p[i]={3,i};
else p[i]={2,i};
}
//l=p[i].first;
}
if(p[0].first==p[1].first&&p[1].first==p[2].first)
{
x=getHeaviest(4,5,6);
xx=getLightest(4,5,6);
v2= {xx,15-x-xx,x};
}
else if(p[0].first==p[1].first)
{
if(p[0].first<p[2].first)
{
x=getLightest(v2[0],v2[1],v2[2]);
v2={x,9-x,v2[2]};
}
else
{
x=getMedian(v2[0],v2[1],v2[2]);
v2={x,9-x,v2[2]};
}
}
else if(p[0].first==p[2].first)
{
if(p[0].first<p[1].first)
{
x=getLightest(v2[0],v2[1],v2[2]);
v2={x,v2[1],10-x,};
}
else
{
x=getMedian(v2[0],v2[1],v2[2]);
v2={x,v2[1],10-x};
}
}
else if(p[2].first==p[1].first)
{
if(p[2].first<p[0].first)
{
x=getLightest(v2[0],v2[1],v2[2]);
v2={v2[0],x,11-x};
}
else
{
x=getMedian(v2[0],v2[1],v2[2]);
v2={v2[0],x,11-x};
}
}
sort(p,p+6);
for(int i=0; i<6; i++)
{
if(p[i].second==-1)
w[i]=v1[p[i].first-1];
else w[i]=v2[p[i].second];
}
answer(w);
}
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |