Submission #1186580

#TimeUsernameProblemLanguageResultExecution timeMemory
1186580HappyCapybaraMechanical Doll (IOI18_doll)C++17
47 / 100
43 ms12072 KiB
#include<bits/stdc++.h> #include "doll.h" using namespace std; void create_circuit(int m, vector<int> a){ int n = a.size(); int pn = pow(2, floor(log2(n-1))+1); vector<int> b = a; a = {}; b.push_back(0); while (a.size()+b.size() <= pn) a.push_back(-1); for (int i=1; i<=n; i++) a.push_back(b[i]); vector<int> v = {0}, w; while (v.size() != pn){ w = {}; swap(v, w); for (int x : w){ v.push_back(x); v.push_back(x + (int) w.size()); } } vector<int> c(m+1, -1), x(pn-1), y(pn-1); c[0] = b[0]; for (int i=0; i<pn-1; i++){ if (2*(i+1) < pn-1){ x[i] = -2*(i+1); y[i] = -2*(i+1)-1; } else { x[i] = a[v[2*(i+1)-pn]]; y[i] = a[v[2*(i+1)+1-pn]]; } } answer(c, 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...