Submission #125251

#TimeUsernameProblemLanguageResultExecution timeMemory
125251khulegubCave (IOI13_cave)C++14
0 / 100
48 ms512 KiB
#include "cave.h" #include <bits/stdc++.h> int n; int start; int uz[5005]; int s[5005], d[5005]; void soli(int l, int r){ for (int i = l; i <= r; i++) uz[i] = !uz[i]; } void exploreCave(int N) { n = N; memset(uz, 0, sizeof uz); for (int i = 0; i < n; i++){ start = i; if (tryCombination(uz) < i) soli(i, n - 1); s[i] = uz[i]; // now uz is guaranteed to produce i<= int l = i, r = n - 1; while (l != r){ int mid = (l + r) >> 1; soli(l, mid); int tmp = tryCombination(uz); soli(l, mid); if(tmp >= i){ //zuun tald r = mid; } else{ //baruun tald l = mid + 1; } } d[l] = i; } answer(s, d); }
#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...