CCCPaste

Untitled

#include 
#include 
#include 
#include 
#include 
#include 
//#include 
using namespace std;
int n;
vectorgraph[350005];
vectorv;
bool visited[350005];
void dfs(int node){
    visited[node]=true;
    for(int i=0; i>n;
    for(int i=0; i>k;
        if(k=='K'){
            graph[i + 1].push_back(i+1);
        }
        if(k=='P'){
            int c; cin>>c;
            graph[c].push_back(i+1);
        }
    }
    memset(visited, false, sizeof visited);
    for(int i=1; i<=n; i++){
        if(!visited[i]){
            dfs(i);
        }
    }
    
    build(0, n + 1, 1);
    vectorresult(n+1);
    for(int i=0; i