제출 #857486

#제출 시각아이디문제언어결과실행 시간메모리
857486chilinhxyzabc동굴 (IOI13_cave)C++17
12 / 100
75 ms524 KiB
#include <bits/stdc++.h> #include "cave.h" using namespace std; void exploreCave(int n) { int s[n], d[n]; for(int i = 0; i < n; i++) { s[i] = 1; d[i] = -1; } int curDoor = tryCombination(s); int idxTrue = 0; while(curDoor != -1) { int l = idxTrue, r = n - 1, res = n - 1; while(l <= r) { int m = (l + r) >> 1; s[m] = 1 - s[m]; int door = tryCombination(s); if(door == -1) { curDoor = -1; break; } if(door == curDoor) { r = m - 1; } else { res = m; l = m + 1; } s[m] = 1 - s[m]; } if(curDoor == -1) break; d[res] = curDoor; s[res] = 1 - s[res]; curDoor = tryCombination(s); idxTrue = res; } for(int i = 0; i < n; i++) { if(d[i] != -1) continue; s[i] = 1 - s[i]; int door = tryCombination(s); d[i] = door; s[i] = 1 - s[i]; } answer(s, d); }
#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...