//
// --- Sample implementation for the task swaps ---
//
// To compile this program with the sample grader, place:
// swaps.h swaps_sample.cpp sample_grader.cpp
// in a single folder and run:
// g++ swaps_sample.cpp sample_grader.cpp
// in this folder.
//
#include "swaps.h"
#include<bits/stdc++.h>
using namespace std;
#define pii pair<int,int>
void solve(int n, int V) {
vector<vector<int>> adj(n);
vector<int> in(n);
for(int k = 1; k < n; k++){
vector<pii> comps;
set<int> occ;
for(int i = 0; i < n; i++){
int oth = ((i+k)%n);
if(occ.count(i) || occ.count(oth)) continue;
schedule(i+1, oth+1);
occ.insert(i);
occ.insert(oth);
comps.push_back({i,oth});
}
vector<int> r = visit();
for(int i = 0; i < r.size(); i++){
if(r[i] == 1){
in[comps[i].second]++;
}else{
in[comps[i].first]++;
}
}
}
queue<int> q;
vector<int> ans(n);
for(int i = 0; i < n; i++){
ans[in[i]] = i+1;
}
answer(ans);
}
# | 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... |