# | 제출 시각 | 아이디 | 문제 | 언어 | 결과 | 실행 시간 | 메모리 |
---|---|---|---|---|---|---|---|
595399 | Deepesson | Art Collections (BOI22_art) | C++17 | 1629 ms | 652 KiB |
이 제출은 이전 버전의 oj.uz에서 채점하였습니다. 현재는 제출 당시와는 다른 서버에서 채점을 하기 때문에, 다시 제출하면 결과가 달라질 수도 있습니다.
#include <bits/stdc++.h>
/**
* returns how many complaints you will receive for this ordering of the art collections
*/
int publish(std::vector<int>);
/**
* use this function when you have found the correct order of the art collections
* You must call answer exactly once; your program will be automatically
* terminated afterwards.
*/
void answer(std::vector<int>);
/**
* implement this function
*/
void solve(int N);
int _N;
int publish(std::deque<int> x){
std::vector<int> u;
for(auto&z:x)u.push_back(z);
return publish(u);
}
int descobrir_posicao(int x){
std::deque<int> vec;
for(int i=0;i!=_N;++i){
if(i+1==x)continue;
vec.push_back(i+1);
}
std::deque<int> back,front;
back=vec;
front=vec;
back.push_back(x);
front.push_front(x);
int alpha = publish(back),beta=publish(front);
int custo_base = (alpha+beta-(_N-1))/2;
///Quantos caras na frente tem?
int posicao = beta-custo_base;
return posicao;
}
void solve(int N) {
_N=N;
int array[N]={};
for(int i=0;i!=N;++i){
int p = descobrir_posicao(i+1);
array[p]=i+1;
}
std::vector<int> res;
for(int i=0;i!=N;++i)res.push_back(array[i]);
answer(res);
}
컴파일 시 표준 에러 (stderr) 메시지
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |