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 "grid.h"
std::vector<int> SortDisks(int N) {
if (N > 50) return std::vector<int>();
std::vector<int> rem(N);
for (int ni = 0; ni < N; ni++) {
rem[ni] = ni;
}
std::vector<int> p(N);
for (int ni = N; ni > 0; ni--) {
for (int nj = 0; nj < ni; nj++) {
for (int nk = 0; nk < ni; nk++) {
p[nk] = rem[(nj + nk) % ni];
}
for (int nk = 0; nk < N; nk++) {
}
int r = PutDisks(p);
if (r == N + ni - 1) {
p[ni - 1] = rem[nj];
std::swap(rem[ni - 1], rem[nj]);
break;
}
}
}
std::vector<int> answer(N);
for (int ni = 0; ni < N; ni++) {
answer[p[ni]] = ni + 1;
}
return answer;
}
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |