Submission #1234062

#TimeUsernameProblemLanguageResultExecution timeMemory
1234062altern23Art Collections (BOI22_art)C++20
100 / 100
801 ms520 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<pair<int, int>> ans;
    vector<int> f(N + 5);
    for(int i = 1; i <= N; i++){
        int now = i;
        vector<int> v;
        for(int j = 1; j <= N; j++){
            v.push_back(now);
            now++;
            if(now > N) now = 1;
        }
        f[i] = publish(v);
    }
    for(int i = 2; i <= N; i++){
        ans.push_back({abs((N * (N - 1) / 2)- f[i] - (N - 1) * (N - 2) / 2 + f[i - 1]), i - 1});
    }
    ans.push_back({abs((N * (N - 1) / 2) - f[1] - (N - 1) * (N - 2) / 2 + f[N]), N});

    sort(ans.begin(), ans.end());
    vector<int> zz;
    for(auto [i, j] : ans) zz.push_back(j);
    answer(zz);
}
#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...