Submission #1123552

#TimeUsernameProblemLanguageResultExecution timeMemory
1123552NoMercyArt Collections (BOI22_art)C++20
100 / 100
1100 ms508 KiB
#include "art.h"
#include <bits/stdc++.h>
using namespace std;
//
// --- 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) {
    vector<int> order, all, ans;
    for (int i = 0;i < N;i ++) {
        order.push_back(i + 1);
        ans.push_back(i + 1);
    }
    for (int i = 0;i < N;i ++) {
        all.push_back(publish(order));
        order.insert(order.begin(), order.back());
        order.pop_back();
    }
    for (int i = 0;i < N;i ++) {
        int j = (1 + i) % N;
        order[N - i] = all[(j - 1 + N) % N] - all[j];
    }

    auto cmp = [&](int x, int y) -> bool {
        return order[x] > order[y];
    };
    stable_sort(ans.begin(), ans.end(), cmp);
    
    answer(ans);
}
#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...