Submission #1144528

#TimeUsernameProblemLanguageResultExecution timeMemory
1144528not_amirpopa (BOI18_popa)C++20
0 / 100
2 ms432 KiB
#include <bits/stdc++.h> #include "popa.h" using namespace std; vector<int> parent; int cntr; void calc(int v, int p) { while (v != p) { cntr = max(cntr, v); if (query(v, v + 1, v + 1, v + 1)) parent[v] = v + 1; else { calc(v + 1, v); parent[v] = cntr + 1; } v = parent[v]; } } int solve(int N, int* L, int* R) { L = new int[N], R = new int[N]; cntr = 0; parent.assign(N, -1); calc(0, N); for (int i = 0; i < N; i++) L[i] = R[i] = -1; int r = -1; for (int i = 0; i < N; i++) { if (parent[i] == -1) r = i; else { if (i < parent[i]) L[parent[i]] = i; else R[parent[i]] = i; } } return r; }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...