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 <bits/stdc++.h>
#include "swaps.h"
using namespace std;
vector<int> dcS(vector<int> A) {
bool ok = false;
int N = A.size();
while(ok == false) {
ok = true;
for(int l = 0; l + 1 < N; l += 2)
schedule(A[l], A[l + 1]);
vector<int> K = visit();
for(int l = 0, cur = 0; l + 1 < N; l += 2, cur++) {
if(K[cur] == 0) {
ok = false;
swap(A[l], A[l + 1]);
}
}
for(int l = 1; l + 1 < N; l += 2)
schedule(A[l], A[l + 1]);
K.clear(); K = visit();
for(int l = 1, cur = 0; l + 1 < N; l += 2, cur++) {
if(K[cur] == 0) {
ok = false;
swap(A[l], A[l + 1]);
}
}
}
return A;
}
void solve(int N, int V) {
vector<int> res(N);
for(int l = 0; l < N; l++)
res[l] = l + 1;
res = dcS(res);
answer(res);
}
# | 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... |
# | 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... |