Submission #1286954

#TimeUsernameProblemLanguageResultExecution timeMemory
1286954cowkimArt Collections (BOI22_art)C++20
0 / 100
0 ms332 KiB
#include <iostream>
#include <algorithm>
#include <vector>
#include <set>
#include <map>
#include <unordered_map>
#include <queue>
#include <string>
#include <math.h>
#include <cctype>
#include <cstdint>
#include <climits>
#include <iostream>
#include <algorithm>
#include <vector>
#include <set>
#include <map>
#include <unordered_map>
#include <queue>
#include <string>
#include <math.h>
#include <cctype>
#include <cstdint>
#include <climits>
#include <iomanip>
#include <vector>


#define ll long long
#define endl "\n"
using namespace std;
/**
 * returns how many complaints you will receive for this ordering of the art collections
 */
int publish(std::vector<int>);

/**
 * use this function when you have found the correct order of the art collections
 * You must call answer exactly once; your program will be automatically
 * terminated afterwards.
 */
void answer(std::vector<int>);

/**
 * implement this function
 */
void solve(int n){
    vector<int> permutation(n);
    for(int i = 0; i<n; i++){
        permutation[i] = i+1;
    }
    int first = publish(permutation);
    vector<int> distFromOne(n,0);
    for(int i = 1; i< n; i++){
        swap(permutation[0],permutation[i]);
        int cur = publish(permutation);
        swap(permutation[i],permutation[0]);
        distFromOne[i] = cur - first;
    }
    vector<pair<int,int>> ans(n);
    for(int i = 0; i< n; i++){
        ans[i] = {distFromOne[i],permutation[i]};
    }
    sort(ans.begin(),ans.end());
    vector<int> actualAns(n);
    for(int i = 0; i<n; i++){
        actualAns[i] = ans[i].second;
    }
    answer(actualAns);
}
#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...