Submission #1206276

#TimeUsernameProblemLanguageResultExecution timeMemory
1206276aritro_September (APIO24_september)C++20
11 / 100
1 ms328 KiB
#include<bits/stdc++.h>
using namespace std;

int solve(int n,int m,vector<int> f,vector<vector<int>> s){
    vector<vector<int>> child(n);
    for(int i=0;i<n;i++){
        if(f[i]!=-1) child[f[i]].push_back(i);
    }
    map<int,int> ind;
    //m=1
    int a[n-1];
    for(int i=0;i<n-1;i++) a[i]=s[0][i];
    for(int i=0;i<n-1;i++) ind[a[i]]=i;
    int ans=0;
    for(int i=0;i<n-1;i++){
        ans++;
        int node=a[i];
        int new_i=i;
        for(auto u:child[node]){
            new_i=max(new_i,ind[u]);
        }
        i=new_i;
    }
    return ans;
}
#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...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...