Submission #1591774


Source Code Expand

#include <bits/stdc++.h>
using namespace std;

#define fill(x,y) memset(x,y,sizeof(x))
#define fi first
#define se second
#define sz(x) ((int) (x).size())
#define all(x) (x).begin(), (x).end()
#define sqr(x) ((x) * (x))
#define sqrt(x) sqrt(abs(x))
#define mp make_pair
#define pb push_back
#define smp(x,y,z) mp(x,mp(y,z))
#define reads(x) scanf("%s",&x)
#define read(x) scanf("%d",&x)
#define read2(x,y) scanf("%d%d",&x,&y)
#define read3(x,y,z) scanf("%d%d%d",&x,&y,&z)

typedef long long ll;
typedef string s;
typedef pair<int,int> pii;
typedef pair<int,string> pis;
typedef pair<string,int> psi;
typedef pair<string,string> pss;
typedef vector<int> vi;
typedef vector<vi> vvi;
typedef vector<pii> vpii;
typedef vector<vector<int> > matrix;

const ll oo = 1e9+7;
const int maxSize = 100100;
const int mod = 1e9+7;

const double EPS = (1e-9);

int dcmp(double x, double y){return fabs(x-y) <= EPS ? 0 : x < y ? -1 : 1;}

map<int,vi> seq;
map<int,priority_queue<pii> > childs;
map<int,int> maxi;
vector<pii> coun;

int dfs(int n){
    vi childss = seq[n] ;
    if(childss.empty())return 1;
    int maxii = 0 ;
    for(int i : childss){
        maxii=max(maxii,dfs(i));
    }
    maxi[n] = maxii;
    return maxii+1;
}

int main(){

    int n  ; cin >> n ;
    for(int i=2 ;i<=n ;i++){
        int num ; cin >> num ;
        if(i!=num)seq[num].pb(i) ;
    }
    dfs(1);
    for(pair<int,vi> i : seq){
        for(int j : i.se){
            childs[i.fi].push({maxi[j],j}) ;
        }
    }
    int res=-1 ;
    coun.pb({1,0});
    while(!coun.empty()){
        pii out = coun.back() ; coun.pop_back() ;
        if(childs[out.fi].size()==0)continue;
        coun.pb({out.fi,out.se+1});
        pii out2 = childs[out.fi].top() ; childs[out.fi].pop() ;
        coun.pb({out2.se,out.se+1});
        res=max(res,out.se+1);
    }
    cout << res ;
}

Submission Info

Submission Time
Task B - Tournament
User vjudge3
Language C++14 (Clang 3.8.0)
Score 0
Code Size 1843 Byte
Status CE

Compile Error

./Main.cpp:1:10: fatal error: 'bits/stdc++.h' file not found
#include <bits/stdc++.h>
         ^
1 error generated.