# | Time | Username | Problem | Language | Result | Execution time | Memory |
---|---|---|---|---|---|---|---|
1084322 | MrPavlito | Art Collections (BOI22_art) | C++17 | 1058 ms | 1944 KiB |
This submission is migrated from previous version of oj.uz, which used different machine for grading. This submission may have different result if resubmitted.
#include "art.h"
#include <bits/stdc++.h>
#define pb push_back
#define mp make_pair
#define all(x) (x).begin(),(x).end()
#define fi first
#define sc second
#define pii pair<int,int>
using namespace std;
const int MAXN = 1e5+5;
const int mod7 = 1e9+7;
const long long inf = 1e18;
int n;
vector<int> nxtperm(vector<int> tr)
{
int p = tr[n-1];
vector<int> nw;
nw.pb(p);
for(int i=0; i<n-1; i++)nw.pb(tr[i]);
return nw;
}
//
// --- Sample implementation for the task art ---
//
// To compile this program with the sample grader, place:
// art.h art_sample.cpp sample_grader.cpp
// in a single folder, then open the terminal in this directory (right-click onto an empty spot in the directory,
// left click on "Open in terminal") and enter e.g.:
// g++ -std=c++17 art_sample.cpp sample_grader.cpp
// in this folder. This will create a file a.out in the current directory which you can execute from the terminal
// as ./a.out
// See task statement or sample_grader.cpp for the input specification
//
void solve(int N) {
n = N;
vector<int> trperm(n);
for(int i=1; i<=n; i++)trperm[i-1] = i;
vector<int> svi(n);
vector<int> rez(n);
for(int i=0; i<n; i++)
{
svi[i] = publish(trperm);
if(svi[i] == 0)
{
answer(trperm);
return;
}
trperm = nxtperm(trperm);
}
for(int i=0; i<n; i++)
{
int tr = svi[i];
int nxt = svi[(i+1)%n];
rez[n-i-1] = (nxt-tr+n-1)/2;
}
vector<int> konacno(n);
for(int i=0; i<n; i++)konacno[rez[i]] = i+1;
answer(konacno);
}
Compilation message (stderr)
# | 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... |