# | Time | Username | Problem | Language | Result | Execution time | Memory |
---|---|---|---|---|---|---|---|
785261 | alexander707070 | 저울 (IOI15_scales) | C++14 | 1 ms | 224 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;
int w[10],z[10],s[10],ans[6];
bool used[10];
void init(int T) {
}
void orderCoins() {
/* ... */
for(int i=1;i<=6;i++){
used[i]=false;
}
int a=getLightest(1,2,3);
int b=getLightest(4,5,6);
int c=0;
if(a>1 and b>1)c=getLightest(a,b,1);
else if(a<6 and b<6)c=getLightest(a,b,6);
else c=getLightest(a,b,2);
int r=0;
if(c==1)r=getLightest(b,2,3);
if(c==2)r=getLightest(b,1,3);
if(c==3)r=getLightest(b,1,2);
if(c==4)r=getLightest(a,5,6);
if(c==5)r=getLightest(a,4,6);
if(c==6)r=getLightest(a,4,5);
w[1]=c; w[2]=r;
used[c]=used[r]=true;
int pt=0;
for(int i=1;i<=6;i++){
if(!used[i]){
pt++; z[pt]=i;
}
}
int d=getHeaviest(z[1],z[2],c);
int e=getHeaviest(z[3],z[4],r);
int f=getHeaviest(d,e,c);
int k=0;
if(f==z[1])k=getHeaviest(e,z[2],c);
if(f==z[2])k=getHeaviest(e,z[1],c);
if(f==z[3])k=getHeaviest(d,z[4],r);
if(f==z[4])k=getHeaviest(d,z[3],r);
w[6]=f; w[5]=k;
used[f]=used[k]=true;
pt=0;
for(int i=1;i<=6;i++){
if(!used[i]){
pt++; s[pt]=i;
}
}
int x=getMedian(s[1],s[2],c);
if(x==s[1]){
w[3]=s[1]; w[4]=s[2];
}else{
w[3]=s[2]; w[4]=s[1];
}
for(int i=0;i<6;i++){
ans[i]=w[i+1];
}
answer(ans);
return;
}
Compilation message (stderr)
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |