# | Time | Username | Problem | Language | Result | Execution time | Memory |
---|---|---|---|---|---|---|---|
719957 | mariowong | Art Collections (BOI22_art) | C++17 | 1767 ms | 648 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 <vector>
/**
* 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
*/
std::vector <int> v;
void solve(int N){
v.clear();
for (int i=1;i<=N;i++) v.push_back(i);
int l=publish(v);
for (int i=2;i<=N;i++){
std::vector <int> q;
q.push_back(i);
for (int j=0;j<N;j++){
if (v[j] != i) q.push_back(v[j]);
}
int val=publish(q);
int pos=-1;
for (int j=i-1;j>=0;j--){
if (val == l-j+(i-1-j)) pos=i-1-j;
}
for (int j=i-1;j>pos;j--){
v[j]=v[j-1];
}
v[pos]=i;
l=val-pos;
}
answer(v);
}
Compilation message (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... |