Submission #1052771

#TimeUsernameProblemLanguageResultExecution timeMemory
1052771woodMechanical Doll (IOI18_doll)C++17
47 / 100
39 ms9524 KiB
#include "doll.h" #include <bits/stdc++.h> using namespace std; #define pb push_back void create_circuit(int M, std::vector<int> A) { int N = A.size(); vector<int> res(M+1,-1), x, y; res[0] = A[0]; int logn = 1, size = 1; while(size<N){ size*=2; logn++; } int size2 = size/2; for(int i = 1; i<size2; i++){ x.pb(-2*i); y.pb(-2*i-1); } vector<int> list = {1}; while(size2>0){ int pp = list.size(); for(int i = 0; i<pp; i++) list.pb(min(list[i]+size2,N)); size2>>=1; } A.pb(-1); for(int i = 0; i<size-1; i++){ if(i&1) y.pb(A[list[i]]); else x.pb(A[list[i]]); } y.pb(0); answer(res,x,y); }
#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...