제출 #1246274

#제출 시각아이디문제언어결과실행 시간메모리
1246274adam17Art Collections (BOI22_art)C++20
35 / 100
93 ms408 KiB
#include "art.h" // #include <algorithm> using namespace std; int NN; vector<int> X; bool compare(int a, int b) { vector<int> V(2); V[0] = a; V[1] = b; for (int i = 1; i <= NN; i++) { if ((i != a) && (i != b)) { V.push_back(i); } } int x = publish(V); V[0] = b; V[1] = a; int y = publish(V); return x < y; } void sort(int i, int j) { if (j - i > 1) { int s = (i + j) / 2; sort(i, s); sort(s, j); vector<int> Y(0); int a = i, b = s; while ((a < s) && (b < j)) { if (compare(X[a], X[b])) { Y.push_back(X[a]); a++; } else { Y.push_back(X[b]); b++; } } while (a < s) { Y.push_back(X[a]); a++; } while (b < s) { Y.push_back(X[b]); b++; } for (int ii = 0; ii < Y.size(); ii++) { X[i + ii] = Y[ii]; } } } void solve(int N) { NN = N; X.resize(N); for (int i = 0; i < N; i++) { X[i] = i + 1; } sort(0, N); answer(X); }
#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...