제출 #137303

#제출 시각아이디문제언어결과실행 시간메모리
137303GioChkhaidze동굴 (IOI13_cave)C++14
100 / 100
1344 ms640 KiB
#include <bits/stdc++.h> #include "cave.h" using namespace std; void exploreCave(int N) { int ANS[N],f[N],ANSidx[N]; for (int i=0; i<N; i++) ANS[i]=0,ANSidx[i]=0,f[i]=0; for (int i=0; i<N; i++) { for (int j=0; j<N; j++) if (!f[j]) ANS[j]=0; int x=tryCombination(ANS),KO=0; if (x==-1) x=N; if (x==i) KO=1; int l=0,r=N-1,mid,idx=-1; while (l<=r) { mid=(l+r)/2; for (int j=0; j<=mid; j++) if (!f[j]) ANS[j]=KO; for (int j=mid+1; j<N; j++) if (!f[j]) ANS[j]=1-KO; int x=tryCombination(ANS); if (x==-1) x=N; if (i<x) { idx=mid; r=mid-1; } else l=mid+1; } ANS[idx]=KO,ANSidx[idx]=i; f[idx]=1; } answer(ANS,ANSidx); return ; }
#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...