Submission #1158147

#TimeUsernameProblemLanguageResultExecution timeMemory
1158147weakweakweakCave (IOI13_cave)C++20
100 / 100
402 ms556 KiB
#include "cave.h" #include <bits/stdc++.h> using namespace std; int tmp[5100], isfixed[5100]; int ans[5100], whs[5100]; void exploreCave(int N) { for (int i = 0; i < N; i++) isfixed[i] = ans[i] = 0; for (int j = 0; j < N; j++) { int me = 0; for (int i = 0; i < N; i++) if (!isfixed[i]) tmp[i] = 1; int ret = tryCombination(tmp); if (ret == -1 or ret > j) me = 1; int l = 0, r = N-1; while (l < r) { int mid = (l+r) / 2; for (int i = 0; i < N; i++) { if (isfixed[i]) continue; tmp[i] = (i > mid) ^ me; } int ret = tryCombination(tmp); if (ret > j or ret == -1) r = mid; else l = mid+1; } ans[l] = me; whs[l] = j; isfixed[l] = 1; tmp[l] = me; } answer(ans, whs); }
#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...