Submission #575545

#TimeUsernameProblemLanguageResultExecution timeMemory
575545benjaminkleynCave (IOI13_cave)C++17
46 / 100
11 ms724 KiB
#include <bits/stdc++.h> #include "cave.h" using namespace std; typedef long long ll; void exploreCave(int N) { int d[N], s[N]; for (int i = 0; i < N; i++) d[i] = -10, s[i] = 0; set<int> r; for (int i = 0; i < N; i++) r.insert(i); int res = tryCombination(s); stack<int> rem; while (res != -1) { for (int i : r) { s[i] = 1; int x = tryCombination(s); if (x > res || x == -1) { d[i] = res; res = x; rem.push(i); if (res == -1) break; continue; } else if (x < res) { d[i] = x; rem.push(i); } s[i] = 0; } while (!rem.empty()) { int i = rem.top(); rem.pop(); r.erase(i); } } for (int i = 0; i < N; i++) if (d[i] == -10) { s[i] = 1; d[i] = tryCombination(s); s[i] = 0; } answer(s, d); }
#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...