Submission #1292258

#TimeUsernameProblemLanguageResultExecution timeMemory
1292258hynmjCave (IOI13_cave)C++20
12 / 100
293 ms532 KiB
#include "cave.h" #include <bits/stdc++.h> using namespace std; int place[5005]; int correct[5005]; int done[5005]; int query[5005]; int n; void exploreCave(int N) { n = N; for (int door = 0; door < n; door++) { for (int i = door; i < n; i++) { // if (done[i]) // continue; // else correct[i] = 1; } int k = tryCombination(correct); int right = (k > door or k == -1); int wrong = 1 - right; int l = -1, r = n + 1; while (r - l > 1) { int mid = (r + l) / 2; for (int i = 0; i < n; i++) { if (done[i]) { continue; } if (i <= mid) correct[i] = right; else correct[i] = wrong; } k = tryCombination(correct); (k > door or k == -1) ? (r = mid) : (l = mid); } // cout << "set door " << door << endl; correct[r] = right; place[r] = door; done[r] = 1; } answer(correct, place); }
#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...