Submission #702813

#TimeUsernameProblemLanguageResultExecution timeMemory
702813Halogenpopa (BOI18_popa)C++14
37 / 100
162 ms296 KiB
#include <bits/stdc++.h>
#include "popa.h"

using namespace std;

int rl[1005], rr[1005];

int recur(int s, int e, int p) {
    if (s > e) return -1;
    int r = s;
    for (int i = s + 1; i <= e; i++) {
        if (query(s, i, i, e) == 0) continue;

        r = i;
        break;
    }

    rl[r] = recur(s, r - 1, r);
    rr[r] = recur(r + 1, e, r);
    return r;
}

int solve(int N, int*l, int *r) {
    memset(rl, -1, sizeof(rl));
    memset(rr, -1, sizeof(rr));

    int root = recur(0, N - 1, -1);

    for (int i = 0; i < N; i++) {
        l[i] = rl[i];
        r[i] = rr[i];
    }
    return root;
}
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...