#include "swaps.h"
#include <bits/stdc++.h>
using namespace std;
typedef long long ll;
int higher[510][510];
bool cmp(int i, int j){
return higher[i][j];
}
void solve(int n, int v) {
vector < int > ord;
vector < pair < int, int > > ask[n + 2];
for(int i = 1; i <= n; i++){
int l = 1, r = n - i + 1;
while(l < r){
ask[i].push_back({l, r});
l++, r--;
}
}
for(int i = n + 1; i > 2; i--){
int l = n + 2 - i, r = n;
while(l < r){
ask[i].push_back({l, r});
l++, r--;
}
}
for(int i = 1; i <= n; i++){
int j = 0;
for(auto [l, r] : ask[i]) schedule(l, r);
vector < int > cur = visit();
for(auto [l, r] : ask[i]) higher[r][l] = 1 - cur[j], higher[l][r] = cur[j++];
}
for(int i = 1; i <= n; i++) ord.push_back(i);
sort(ord.begin(), ord.end(), cmp);
answer(ord);
}
| # | 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... |