Submission #1310864

#TimeUsernameProblemLanguageResultExecution timeMemory
1310864dimitri.shengeliaCave (IOI13_cave)C++20
0 / 100
220 ms556 KiB
#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 = -1, r = v.size() - 1; while ( l <= r ) { int m = ( l + r ) / 2; for ( int j = m + 1; j < (int)v.size(); j++ ) { a[v[j]] = 1 - k; } int k1 = tryCombination( a ); if ( k1 == -1 or k1 > i ) { r = m; } else { l = m + 1; } for ( int j = m + 1; j < (int)v.size(); j++ ) { a[v[j]] = k; } } a[v[r]] = k; b[v[r]] = i; v.erase( v.begin() + r ); } answer( a, b ); return; }
#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...