Submission #443709

#TimeUsernameProblemLanguageResultExecution timeMemory
443709lLab_Cave (IOI13_cave)C++14
0 / 100
59 ms380 KiB
#include "cave.h" #include <bits/stdc++.h> using namespace std; void exploreCave(int N) { int A[N],B[N]; for(int i=0;i<N;++i){ A[i] = 0; B[i] = -1; } int k = 0; int i=0; while(i<N||k>=0){ k = tryCombination(A); if(k == -1) k = N; bool cl = k == i; int l=0, r=N-1; int ans = 0; while(l<=r){ int p = k; int mid = (l+r)/2; int C[N]; for(int j=0;j<N;++j) C[j] = A[j]; for(int j=mid+1;j<=r;++j){ if(B[j] != -1) continue; C[j] = (A[j]+1)%2; } k = tryCombination(C); if(k==-1) k = N; if(cl){ if(k>i){ l = mid+1; }else{ ans = mid; r = mid+1; } }else{ if(k==i){ l = mid+1; }else{ ans = mid; r = mid+1; } } } if(cl){ A[ans] = (A[ans]+1)%2; } B[i] = ans; } answer(A, B); }

Compilation message (stderr)

cave.cpp: In function 'void exploreCave(int)':
cave.cpp:21:17: warning: unused variable 'p' [-Wunused-variable]
   21 |             int p = k;
      |                 ^
#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...