#include "september.h"
#include <bits/stdc++.h>
using namespace std;
const int MAX = 1e5 + 5;
const int inf = 1e9;
int res = 0 , NC;
vector < vector < int > > adj;
vector < int > FC;
vector < vector < int > > SC;
map < int , int > idx;
int cur = inf;
void dfs(int v , int p)
{
if(idx[v] < cur){
res++;
cur = idx[v];
}
for(int u : adj[v]){
if(u == p) continue;
dfs(u , v);
}
}
int solve(int N, int M, vector < int > F, vector < vector < int > > S){
adj.resize(N);
FC = F;
SC = S;
NC = N;
for(int i = 1;i <= N - 1;i++){
adj[F[i]].push_back(i);
adj[i].push_back(F[i]);
}
for(int i = 0;i <= N - 2;i++)
{
idx[S[0][i]] = i;
}
dfs(1 , -1);
return res;
}
# | 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... |