Submission #97975

#TimeUsernameProblemLanguageResultExecution timeMemory
97975AlexLuchianovCave (IOI13_cave)C++14
0 / 100
690 ms472 KiB
#include <iostream> #include "cave.h" using namespace std; void exploreCave(int n) { int door[n] = {0}, per[n] = {0}, seen[n] = {0}; for(int i = 0; i < n; i++){ int from = 0, to = n - 1; if(i < tryCombination(door)) for(int j = 0; j < n; j++) if(seen[j] == 0) door[j] ^= 1; while(from < to){ int mid = (from + to) / 2; for(int j = 0; j < mid; j++) if(seen[j] == 0) door[j] ^= 1; int val = tryCombination(door); if(i <= val || val == -1){ to = mid; } else from = mid + 1; for(int j = 0; j < mid; j++) if(seen[j] == 0) door[j] ^= 1; } door[from] ^= 1; per[from] = i; seen[from] = 1; } answer(door, per); }
#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...