#include "cave.h"
#include <bits/stdc++.h>
using namespace std;
int tmp[5100], isfixed[5100];
int ans[5100], whs[5100];
void exploreCave(int N) {
for (int i = 0; i < N; i++) isfixed[i] = ans[i] = 0;
for (int j = 0; j < N; j++) {
int me = 0;
for (int i = 0; i < N; i++) if (!isfixed[i]) tmp[i] = 1;
int ret = tryCombination(tmp);
if (ret == -1 or ret > j) me = 1;
int l = 0, r = N-1;
while (l < r) {
int mid = (l+r) / 2;
for (int i = 0; i < N; i++) {
if (isfixed[i]) continue;
tmp[i] = (i > mid) ^ me;
}
int ret = tryCombination(tmp);
if (ret > j or ret == -1) r = mid;
else l = mid+1;
}
ans[l] = me;
whs[l] = j;
isfixed[l] = 1;
tmp[l] = me;
}
answer(ans, whs);
}
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |