제출 #798591

#제출 시각아이디문제언어결과실행 시간메모리
798591Liudas동굴 (IOI13_cave)C++17
0 / 100
165 ms408 KiB
#include <bits/stdc++.h> #include "cave.h" using namespace std; void exploreCave(int N){ bool lock[N]; int ans[N]; int check[N]; for(int i = 0; i < N; i ++){ for(int j = 0; j < N; j ++){ if(!lock[j]){ check[j] = 0; } } int sign = 0, op; int t = tryCombination(check); if(t > i){ sign = 0; } else{ sign = 1; } op = abs(sign - 1); int l = 0, r = N; while(l + 1 < r){ int mid = (l + r+1) / 2; for(int j = l; j < mid; j ++){ if(!lock[j])check[j]=sign; } for(int j = mid; j < r; j ++){ if(!lock[j])check[j]=op; } int a = tryCombination(check); if(a <= i && a >= 0){ l = mid; } else{ r = mid; } } lock[l] = true; ans[l] = i; check[l] = sign; } answer(check, ans); }
#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...