Submission #1239630

#TimeUsernameProblemLanguageResultExecution timeMemory
1239630Ghulam_JunaidComparing Plants (IOI20_plants)C++20
5 / 100
47 ms6604 KiB
#include <bits/stdc++.h>
#include "plants.h"
// #include "grader.cpp"
using namespace std;

const int N = 4e5 + 100;
int nn, K, par[N];
vector<int> R;

void init(int kk, vector<int> rr) {
    nn = rr.size(), K = kk, R = rr;
    par[2 * nn - 1] = 2 * nn;
    for (int i = 2 * nn - 2; i >= 0; i --){
        if ((R[i % nn] == R[(i + 1) % nn]))
            par[i] = par[i + 1];
        else
            par[i] = i + 1;
    }
}

int compare_plants(int x, int y) {
    if (y <= par[x]){
        if (R[x]) return -1;
        return 1;
    }
    if (x + nn <= par[y]){
        if (R[y]) return 1;
        return -1;
    }
    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...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...