Submission #377812

#TimeUsernameProblemLanguageResultExecution timeMemory
377812jlallas384Cave (IOI13_cave)C++14
46 / 100
18 ms364 KiB
#include <bits/stdc++.h> #include "cave.h" using namespace std; // binary search xxxx x // flip all left if first open door doesnt change xxxxx void exploreCave(int N){ int ans[N] = {}; int arr[N]; for(int i = 0; i < N; i++){ arr[i] = -1; } if(N <= 100){ while(1){ int cur = tryCombination(ans); if(cur == -1) break; // test all switch if next opened door increase, then switch i point to cur for(int i = 0; i < N; i++){ ans[i] ^= 1; int ret = tryCombination(ans); if(ret == -1 || ret > cur){ arr[i] = cur; break; } ans[i] ^= 1; } } } if(tryCombination(ans) == -1){ for(int i = 0; i < N; i++) if(arr[i] == -1){ ans[i] ^= 1; arr[i] = tryCombination(ans); ans[i] ^= 1; } answer(ans,arr); return; } while(1){ int resp = tryCombination(ans); if(resp == -1) break; ans[resp] ^= 1; } for(int i = 0; i < N; i++){ arr[i] = i; } answer(ans,arr); }
#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...