Submission #1295140

#TimeUsernameProblemLanguageResultExecution timeMemory
1295140faricaThe Collection Game (BOI21_swaps)C++20
0 / 100
1 ms332 KiB
#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 timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...