Submission #800433

#TimeUsernameProblemLanguageResultExecution timeMemory
800433hugo_pmEditor (BOI15_edi)C++17
35 / 100
3046 ms7788 KiB
#include <bits/stdc++.h> using namespace std; int main() { ios::sync_with_stdio(false); cin.tie(0); int N; cin >> N; vector<int> level(N+1, 0), value(N+1, -1); vector<bool> active(N+1, false); vector<int> parent(N+1, -1); // edit 0 au début level[0] = 0, value[0] = 0, active[0] = true; for (int iOp = 1; iOp <= N; ++iOp) { int action; cin >> action; if (action < 0) { level[iOp] = -action; parent[iOp] = iOp-1; while (level[parent[iOp]] >= level[iOp]) { parent[iOp] = parent[parent[iOp]]-1; } } else { level[iOp] = 0, value[iOp] = action; } } vector<int> lastEdit(N+1, 0); for (int iOp = 1; iOp <= N; ++iOp) { lastEdit[iOp] = (level[iOp] == 0 ? value[iOp] : lastEdit[parent[iOp]-1]); cout << lastEdit[iOp] << '\n'; } }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...