Submission #1212874

#TimeUsernameProblemLanguageResultExecution timeMemory
1212874BigBadBullyArt Collections (BOI22_art)C++20
20 / 100
56 ms428 KiB
#include <bits/stdc++.h> #include "art.h" using namespace std; void solve(signed N) { int n = N; auto comp = [&](int x,int y)->bool { //x < y vector<int> tr; tr.push_back(x+1); tr.push_back(y+1); for (int i = 0; i < n; i++) if (i != x && i != y) tr.push_back(i+1); int a = publish(tr); swap(tr[0],tr[1]); int b = publish(tr); return a < b; }; function<vector<int>(vector<int>)> srt = [&](vector<int> v)->vector<int> { vector<int> a,b; if (v.size()<=1) return v; int piv = rand()%(v.size()); for (int i = 0; i < v.size(); i++) { if (i == piv) continue; if (comp(v[piv],v[i])) b.push_back(v[i]); else a.push_back(v[i]); } vector<int> res; res = srt(a); res.push_back(v[piv]); auto vec = srt(b); for (int x:vec) res.push_back(x); return res; }; vector<int> bs(n,0); for (int i = 0; i < n; i++) bs[i] = i; auto ans = srt(bs); for (int&x:ans)x++; 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...