Submission #154349

#TimeUsernameProblemLanguageResultExecution timeMemory
154349songcCave (IOI13_cave)C++14
12 / 100
304 ms512 KiB
#include <bits/stdc++.h> #include "cave.h" using namespace std; typedef long long LL; typedef pair<int,int> pii; int N; int S[5050]; int ans[5050]; void exploreCave(int n) { N = n; memset(ans, -1, sizeof ans); for (int i=0; i<N; i++){ bool st = (i == tryCombination(S)); int l = 0, r=N-1; while (l < r){ int mid = (l+r)/2; for (int i=l; i<=mid; i++) if (ans[i] == -1) S[i] = 1; bool ret = (i == tryCombination(S)); for (int i=l; i<=mid; i++) if (ans[i] == -1) S[i] = 0; if (st == ret) l = mid+1; else r = mid; } ans[i] = l; if (st) S[l] = 1; } answer(S, ans); }
#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...