#include <bits/stdc++.h>
#include "cave.h"
using namespace std;
int tryCombination ( int S[] );
void answer( int S[], int D[] );
void exploreCave( int N ) {
int n = N;
int a[n], b[n];
vector <int> v;
for ( int i = 0; i < n; i++ ) {
v.push_back( i );
}
int k;
int l, r;
for ( int i = 0; i < n; i++ ) {
for ( auto x : v ) {
a[x] = 0;
}
int k = tryCombination( a );
if ( k == -1 or k > i ) {
k = 0;
} else {
k = 1;
}
l = 0, r = v.size();
while ( l <= r ) {
int m = ( l + r ) / 2;
for ( int j = m; j < (int)v.size(); j++ ) {
a[v[j]] = 1 - k;
}
int k1 = tryCombination( a );
if ( k1 == -1 or k > i ) {
r = m - 1;
} else {
l = m + 1;
}
}
a[v[r]] = k;
b[v[r]] = i;
v.erase( v.begin() + r );
}
return;
}
| # | 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... |