# | 제출 시각 | 아이디 | 문제 | 언어 | 결과 | 실행 시간 | 메모리 |
---|---|---|---|---|---|---|---|
364655 | BartolM | 저울 (IOI15_scales) | C++17 | 1 ms | 384 KiB |
이 제출은 이전 버전의 oj.uz에서 채점하였습니다. 현재는 제출 당시와는 다른 서버에서 채점을 하기 때문에, 다시 제출하면 결과가 달라질 수도 있습니다.
//#include "graderlib.c"
#include "scales.h"
#include <bits/stdc++.h>
using namespace std;
#define X first
#define Y second
#define mp make_pair
#define pb push_back
typedef long long ll;
typedef pair <int, int> pii;
typedef pair <int, pii> pip;
typedef pair <pii, int> ppi;
typedef pair <ll, ll> pll;
const int INF=0x3f3f3f3f;
int bio[10];
vector <int> sol;
void ubaci(int x, int pos=INF) {
bio[x]=1;
pos=min(pos, (int)sol.size());
sol.insert(sol.begin()+pos, x);
}
int indeks(int x) {
for (int i=0; i<(int)sol.size(); ++i) if (sol[i]==x) return i;
return INF;
}
void ispis() {
for (int x:sol) printf("%d ", x);
printf("\n");
}
void init(int T) {
}
void orderCoins() {
sol.clear();
memset(bio, 0, sizeof bio);
int p[6]={1, 2, 3, 4, 5, 6}, res[6]={0};
// random_shuffle(p, p+6);
int A=p[0], C=p[2], x=p[3];
int B=getMedian(p[0], p[1], p[2]);
ubaci(B, 0);
if (B==p[0]) A=p[1];
else if (B==p[2]) C=p[1];
int br=getNextLightest(A, C, x, B);
if (br==x) {
ubaci(x);
br=getLightest(A, B, C);
if (br==C) swap(A, C);
ubaci(A, 0); ubaci(C);
}
else {
if (br==A) swap(A, C);
ubaci(C);
ubaci(A, 0);
br=getMedian(A, B, x);
if (br==A) ubaci(x, 0);
else if (br==x) ubaci(x, 1);
else ubaci(x);
}
// ispis();
//peta
x=p[4];
br=getMedian(sol[1], sol[2], x);
if (br==x) ubaci(x, 2);
else if (br==sol[1]) {
br=getMedian(sol[0], sol[1], x);
if (br==sol[0]) ubaci(x, 0);
else ubaci(x, 1);
}
else {
br=getMedian(sol[2], sol[3], x);
if (br==sol[3]) ubaci(x);
else ubaci(x, 3);
}
// ispis();
//sesta
x=p[5];
br=getMedian(sol[1], sol[2], x);
if (br==x) ubaci(x, 2);
else if (br==sol[2]) {
br=getMedian(sol[3], sol[4], x);
if (br==sol[3]) ubaci(x, 3);
else if (br==x) ubaci(x, 4);
else ubaci(x, 5);
}
else {
br=getMedian(sol[0], sol[1], x);
if (br==x) ubaci(x, 1);
else ubaci(x, 0);
}
for (int i=0; i<6; ++i) res[i]=sol[i];
answer(res);
return;
}
컴파일 시 표준 에러 (stderr) 메시지
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |