//
// --- 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<bool>> adj(n, vector<bool>(n));
vector<int> in(n);
int cnt = 0;
int mx = (n*(n-1))/2;
while(cnt < mx){
vector<pii> comps;
set<int> occ;
for(int i = 0; i < n; i++){
if(occ.count(i)) continue;
for(int j = 0; j < n; j++){
if(j == i || occ.count(j) ||adj[i][j]) continue;
adj[i][j] = true;
adj[j][i] = true;
cnt++;
comps.push_back({i,j});
occ.insert(i);
occ.insert(j);
schedule(i+1,j+1);
break;
}
}
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]++;
}
}
}
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... |