# | Time | Username | Problem | Language | Result | Execution time | Memory |
---|---|---|---|---|---|---|---|
1014351 | MarwenElarbi | 저울 (IOI15_scales) | C++17 | 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>
#include "scales.h"
using namespace std;
void init(int T) {
return;
}
void orderCoins() {
int a=getLightest(1,2,3);
int b=getLightest(4,5,6);
int c=getHeaviest(1,2,3);
int d=getHeaviest(4,5,6);
int ans[6];
ans[5]=getHeaviest(d,c,a);
ans[0]=getLightest(a,b,c);
int mida,midb;
for (int i = 1; i <= 3; ++i)
{
if(i!=c&&i!=a) mida=i;
}
for (int i = 4; i <= 6; ++i)
{
if(i!=b&&i!=d) midb=i;
}
bool test=false;
bool test1=false;
if(ans[5]==c){
swap(c,d);
test=true;
}
if(ans[0]==b){
swap(a,b);
test1=true;
}
ans[1]=getLightest(b,mida,midb);
ans[4]=getHeaviest(c,mida,midb);
if(ans[1]==(test1 ? midb : mida)) swap(b,(test1 ? midb : mida));
if(ans[4]==(test ? mida : midb)) swap(c,(test ? mida : midb));
ans[2]=getLightest(d,mida,midb);
set<int> st;
st.insert(ans[0]);
st.insert(ans[1]);
st.insert(ans[2]);
st.insert(ans[4]);
st.insert(ans[5]);
for (int i = 1; i <= 6; ++i)
{
if(st.count(i)) continue;
ans[3]=i;
break;
}
answer(ans);
}
int main() {
}