Submission #1103152

#TimeUsernameProblemLanguageResultExecution timeMemory
1103152coolboy19521Cave (IOI13_cave)C++17
0 / 100
309 ms336 KiB
#include "cave.h" void exploreCave(int N) { int s[N]; int d[N]; for (int i = 0; i < N; i ++) { s[i] = -1; d[i] = -1; } auto ask = [&s,N](int mi, int df){ int q[N]; for (int i = 0; i < N; i ++) { if (-1 != s[i]) { q[i] = s[i]; } else if (i <= mi) { q[i] = df; } else { q[i] = 1 - df; } } return tryCombination(q); }; for (int i = 0; i < N; i ++) { int r = ask(N - 1, 1); int df = (i <= r ? 1 : 0); int lo = 0; int hi = N - 1; while (lo < hi) { int mi = (lo + hi) / 2; int r = ask(mi, df); if (i + 1 <= r) { hi = mi; } else { lo = mi + 1; } } s[lo] = df; d[lo] = 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...