Submission #1226282

#TimeUsernameProblemLanguageResultExecution timeMemory
1226282kaiboyEditor (BOI15_edi)C++20
35 / 100
3096 ms6244 KiB
#include <algorithm> #include <iostream> using namespace std; const int N = 300000; int aa[N], dd[N], pp[N]; bool used[N]; int main() { ios_base::sync_with_stdio(false), cin.tie(NULL); int n; cin >> n; for (int i = 0; i < n; i++) { int a; cin >> a; used[i] = true; if (a > 0) aa[i] = a; else { dd[i] = a * -1; int p = i - 1; while (!used[p] || dd[p] >= dd[i]) p--; pp[i] = p; int j = i; while (dd[j]) j = pp[j], used[j] = !used[j]; } int j = i; while (j >= 0 && (dd[j] || !used[j])) j--; cout << (j >= 0 ? aa[j] : 0) << '\n'; } return 0; }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...