Submission #1188951

#TimeUsernameProblemLanguageResultExecution timeMemory
1188951wstcubeArt Collections (BOI22_art)C++20
100 / 100
787 ms472 KiB
#include "art.h"
#include <vector>
#include <algorithm>
#include <numeric>
#include <iostream>
#define ll long long
using namespace std;


void solve(int n) {
    vector<int> order(n);
    iota(order.begin(),order.end(),1);
    int inv = publish(order);
    int invp = inv;
    int a,b;
    for(int i=1;i<n;i++){
        vector<int> tmp = order;
        for(int j = i - 1;j >= 0;j--)
            swap(tmp[j], tmp[j + 1]);
        invp=publish(tmp);
        b= (invp-inv+i)/2;
        a=i-b;
        invp=inv-a;
        for(int j = 1;j <= b;j++)
            swap(tmp[j - 1], tmp[j]);
        order = tmp;
        inv -= a;
    }
    answer(order);
}
#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...