Submission #1310688

#TimeUsernameProblemLanguageResultExecution timeMemory
1310688ninogogatishviliCave (IOI13_cave)C++20
0 / 100
26 ms580 KiB
#include <bits/stdc++.h> #include "cave.h" using namespace std; void exploreCave(int N) { vector<int> S(N, 0); vector<int> D(N, -1); vector<int> u(N, 0); for (int d = 0; d < N; d++) { vector<int> c; for (int i = 0; i < N; i++) { if (!u[i]) c.push_back(i); } int l = 0, r = (int)c.size() - 1; while (l < r) { int mid = (l + r) / 2; for (int i = l; i <= mid; i++) { S[c[i]] ^= 1; } int res = tryCombination(S.data()); if (res == -1 || res > d) { r = mid; } else { l = mid + 1; } for (int i = l; i <= mid; i++) { S[c[i]] ^= 1; } } int w = c[l]; u[w] = 1; D[w] = d; S[w] ^= 1; int res = tryCombination(S.data()); if (res != -1 && res <= d) { S[w] ^= 1; } } answer(S.data(), D.data()); }
#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...