#include <bits/stdc++.h>
#include "september.h"
// #include "stub.cpp"
using namespace std;
int solve(int n, int M, vector<int> F, vector<vector<int>> S) {
vector<int> E[n];
for (int i = 1; i < n; i++)
E[F[i]].push_back(i);
vector<int> ind(n);
for (auto i : S) {
for (int j = 0; j < n - 1; j++)
ind[i[j]] = max(ind[i[j]], j);
}
vector<int> z(n);
for (int i = 0; i < n; i++) {
z[i] = ind[i];
for (auto j : E[i])
z[i] = max(z[i], ind[j]);
}
int cnt = 0, r = 0;
for (int i = 0; i < n - 1; i++) {
for (auto j : S)
r = max(r, z[j[i]]);
cnt += (i == r);
}
return cnt;
}
# | 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... |