# | Time | Username | Problem | Language | Result | Execution time | Memory |
---|---|---|---|---|---|---|---|
133238 | Mahdi_Jfri | Scales (IOI15_scales) | C++14 | 2 ms | 380 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 "scales.h"
#include<bits/stdc++.h>
using namespace std;
#define ll long long
#define pb push_back
#define gh getHeaviest
#define gl getLightest
#define gm getMedian
#define gnl getNextLightest
const int maxn = 1e5 + 20;
void init(int T)
{
}
void orderCoins()
{
int res[] = {85 , 1, 2, 3, 4, 5, 6};
{
int x = gl(res[1] , res[2] , res[3]) , y;
swap(res[1] , res[x]);
x = gl(res[4] , res[5] , res[6]);
swap(res[4] , res[x]);
}
int w[6];
if(gl(res[1] , res[2] , res[4]) == res[4])
{
swap(res[1] , res[4]);
swap(res[2] , res[5]);
swap(res[3] , res[6]);
}
{
int x = gm(res[4] , res[5] , res[6]);
if(x != res[5])
swap(res[5] , res[6]);
}
int tx = gnl(res[1] , res[4] , res[5] , res[2]);
if(tx == res[1])
{
int a = res[2] , b = res[3];
res[2] = gm(res[1] , res[2] , res[3]);
res[3] = a + b - res[2];
if(res[2] != a)
tx = gnl(res[1] , res[4] , res[5] , res[2]);
}
if(tx == res[1])
{
w[0] = res[1] , w[1] = res[4] , w[2] = res[5];
w[3] = gl(res[2] , res[3] , res[6]);
w[4] = gm(res[2] , res[3] , res[6]);
w[5] = res[2] + res[3] + res[6] - w[3] - w[4];
}
else if(tx == res[4])
{
tx = gnl(res[1] , res[4] , res[5] , res[3]);
if(tx == res[1])
{
w[0] = res[1] , w[1] = res[2] , w[2] = res[4] , w[3] = res[5];
w[4] = gm(res[1] , res[3] , res[6]);
w[5] = res[3] + res[6] - w[4];
}
else if(tx == res[4])
{
tx = gm(res[1] , res[2] , res[3]);
if(tx == res[3])
swap(res[2] , res[3]);
w[0] = res[1] , w[1] = res[2] , w[2] = res[3] , w[3] = res[4] , w[4] = res[5] , w[5] = res[6];
}
else
{
w[0] = res[1] , w[1] = res[2] , w[2] = res[4] , w[3] = res[3] , w[4] = res[5] , w[5] = res[6];
}
}
else
{
tx = gm(res[1] , res[2] , res[3]);
if(tx == res[2])
{
tx = gnl(res[2] , res[5] , res[6] , res[3]);
if(tx == res[2])
w[0] = res[1] , w[1] = res[4] , w[2] = res[2] , w[3] = res[5] , w[4] = res[6] , w[5] = res[3];
else if(tx == res[5])
w[0] = res[1] , w[1] = res[4] , w[2] = res[2] , w[3] = res[3] , w[4] = res[5] , w[5] = res[6];
else
w[0] = res[1] , w[1] = res[4] , w[2] = res[2] , w[3] = res[5] , w[4] = res[3] , w[5] = res[6];
}
else
{
tx = gl(res[4] , res[2] , res[3]);
swap(res[2] , res[3]);
if(tx == res[4])
w[0] = res[1] , w[1] = res[4] , w[2] = res[2] , w[3] = res[3] , w[4] = res[5] , w[5] = res[6];
else
w[0] = res[1] , w[1] = res[2] , w[2] = res[4] , w[3] = res[3] , w[4] = res[5] , w[5] = res[6];
}
}
answer(w);
}
Compilation message (stderr)
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |