Submission #1156089

#TimeUsernameProblemLanguageResultExecution timeMemory
1156089aarb_.tomatexdScales (IOI15_scales)C++20
0 / 100
0 ms320 KiB
#include <bits/stdc++.h> #include "scales.h" using namespace std; #define ll long long void init(int t){ } void orderCoins() { /* ... */ vector<int> x(6,0); int a = getLightest(1,2,3); int b = getLightest(4,5,6); int c = (a+1)%3; //si 1 => 2 yasi int d = getLightest(a,b,c); //ese es el mas liviano int a1 = getHeaviest(1,2,3); int b1 = getHeaviest(4,5,6); int c1 = (a+1)%3; int d1 = getHeaviest(a1,b1,c1); x[d-1] = 1; x[d1-1] = 2; int i= 0; while(x[i] != 0) i++; int j= i+1; while(x[j] != 0) j++; int k = j+1; while(x[k]!= 0) k++; int r = k+1; while(x[r] != 0)r++; //encuentras los 4 0s int W[] = {d, 0, 0, 0, 0, d1}; int q1 = getLightest(i+1,j+1,k+1); int q2 = getLightest(j+1,k+1,r+1); //aqui ya tiens los dos menores y el mayor, if(q1==q2){ W[1] = q1; x[q1-1] =3; int ii= 0; while(x[ii] != 0) ii++; int jj= ii+1; while(x[jj] != 0) jj++; int kk = jj+1; while(x[kk]!= 0) kk++; int f3 = getLightest(ii, jj,kk); W[2] = f3; int f5 = getHeaviest(ii,jj,kk); W[4] = f5; int f4 = getMedian(ii,jj,kk); W[3] = f4; }else{ int q3 = getLightest(i+1,r+1,d1); W[1] = q3; x[q3-1] = 3; int ii= 0; while(x[ii] != 0) ii++; int jj= ii+1; while(x[jj] != 0) jj++; int kk = jj+1; while(x[kk]!= 0) kk++; int f3 = getLightest(ii, jj,kk); W[2] = f3; int f5 = getHeaviest(ii,jj,kk); W[4] = f5; int f4 = getMedian(ii,jj,kk); W[3] = f4; } answer(W); }
#Verdict Execution timeMemoryGrader output
Fetching results...