#include <bits/stdc++.h>
#include "swaps.h"
using namespace std;
using vi = vector<int>;
using pi = pair<int,int>;
void recSort(int n, vi &v) {
if(n == 1) return;
if(n == 2) {
schedule(v[0], v[1]);
vi tmp = visit();
return;
}
vi a, b;
for(int i=0; i<n; i+=2) {
if(i+1<n) schedule(v[i], v[i+1]);
a.push_back(v[i]);
if(i+1<n) b.push_back(v[i+1]);
}
vi tmp = visit();
recSort((int)a.size(), a);
recSort((int)b.size(), b);
for(int i=1; i<n-1; i+=2) {
schedule(v[i], v[i+1]);
}
tmp = visit();
for(int i=0; i<n-1; i+=2) {
schedule(v[i], v[i+1]);
}
tmp = visit();
}
void solve(int N, int V) {
vi v;
for(int i=1; i<=N; ++i) v.push_back(i);
recSort(N, v);
reverse(v.begin(), v.end());
answer(v);
}
| # | 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... |