#include "beechtree.h"
#include "bits/stdc++.h"
#define pb push_back
#define popb pop_back
#define fi first
#define sc second
using namespace std;
using ll = int;
using pll = pair<ll,ll>;
const ll maxn = 200005;
ll n,m;
vector<pll> g[maxn];
bool ok[maxn];
vector<int> ans;
pll up[maxn];
std::vector<int> beechtree(int N, int M, std::vector<int> P, std::vector<int> C)
{
n = N,m = M;
for(ll i = 2;i<=n;i++){
ll par = P[i-1]+1;
g[par].pb({i,C[i-1]});
up[i] = {par,C[i-1]};
}
ans.resize(n);
ans[n-1] = 1;
ll c = up[n].sc;
for(ll i = n;i>=2;i--){
if(up[i].sc!=c) break;
ans[i-2] = 1;
}
return ans;
}
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |