제출 #1197211

#제출 시각아이디문제언어결과실행 시간메모리
1197211SpyrosAliv동굴 (IOI13_cave)C++17
0 / 100
384 ms528 KiB
#include "cave.h" using namespace std; void exploreCave(int N) { int n = N; int corr[n], rep[n]; for (int i = 0; i < n; i++) { corr[i] = rep[i] = -1; } int nxtQ[n]; for (int j = 0; j < n; j++) { nxtQ[j] = 0; } for (int i = 0; i < n; i++) { bool closed = (tryCombination(nxtQ) == i); int lo = 0, hi = n-1; int finIdx = 0; while (lo <= hi) { int mid = (lo + hi) / 2; int nxt[n]; for (int j = 0; j < n; j++) nxt[j] = nxtQ[j]; for (int j = 0; j <= mid; j++) { if (corr[j] == -1) nxt[j] = 1; } bool c2 = (tryCombination(nxtQ) == i); if (c2 == closed) { lo = mid+1; } else { hi = mid-1; finIdx = mid; } } rep[i] = finIdx; if (closed) corr[i] = 1; else corr[i] = 0; nxtQ[rep[i]] = corr[i]; } answer(rep, corr); }
#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...