Submission #1206272

#TimeUsernameProblemLanguageResultExecution timeMemory
1206272aritro_September (APIO24_september)C++20
0 / 100
1 ms324 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];
    for(int i=0;i<n;i++) a[i]=s[0][i];
    for(int i=0;i<n;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...