시간 제한메모리 제한제출정답맞힌 사람정답 비율
1 초 512 MB41813910837.762%

문제

노드가 $N$개인 꽁꽁 얼어붙은 트리 위로 고양이가 걸어 다니려고 한다. 루트 노드는 $1$번 노드이며, 트리를 이루는 모든 간선의 거리는 $1$이다.

$N-1$마리의 고양이가 $1$번 노드에 멈춰있고, 다른 노드로 걸어 다니기 위해 준비하고 있다. 하지만 이 트리는 꽁꽁 얼어붙어서, 각 고양이가 갖고 있는 고유한 제동지수에 따라 노드를 미끄러지면서 이동해야 한다. $N-1$마리 고양이의 제동지수 $d$는 각각 $2, 3, \cdots, N$이다.

고양이는 1회 이동 시 부모 방향(루트 방향) 혹은 자식 방향 중 하나를 선택하고, 그 방향으로만 간선을 따라 정확히 제동지수 $d$만큼 미끄러진 후 도착한 노드에 멈춰있을 수 있다. 즉, $1$ 이상 $d$ 미만으로 미끄러졌으나 루트 혹은 리프노드에 도착하도록 이동할 수 없다.

$N-1$마리의 고양이는 부모 방향 혹은 자식 방향으로 원하는 횟수만큼 이동할 수 있다. 각 고양이가 $1$번 노드를 포함해 멈춰있을 수 있는 노드의 개수를 구했을 때, 이 값들 중 가장 큰 값을 구해주자.

입력

첫째 줄에 꽁꽁 얼어붙은 트리의 노드 개수 $N$이 주어진다. $(2 \leq N \leq 10^6)$

둘째 줄에 $P_1, P_2, \cdots, P_{N-1}$이 공백으로 구분되어 주어진다. $i$번째 수는 $i+1$번 노드의 부모 노드 번호를 의미한다. $(1 \leq P_i \leq N)$

입력은 항상 트리임이 보장된다.

출력

$N-1$마리 고양이들이 $1$번 노드를 포함해 멈춰있을 수 있는 노드의 개수를 구했을 때, 이 값들 중 가장 큰 값을 하나의 정수로 출력한다.

예제 입력 1

5
1 4 1 3

예제 출력 1

2

그림으로 표현하면 아래와 같다.

제동지수 $d$가 각각 $2, 3, 4, 5$인 4마리의 고양이가 1번 노드에 있고, $d = 2$인 고양이는 $1, 3$번 노드에, $d = 3$인 고양이는 $1, 5$번 노드에, $d = 4, d = 5$인 두 고양이는 $1$번 노드에만 멈춰있을 수 있다.

예제 입력 2

2
1

예제 출력 2

1

힌트

루트 노드는 부모 노드가 없는 노드를, 리프 노드는 자식 노드가 없는 노드를 의미한다.

출처

University > 성균관대학교 > 2025 SKKU 프로그래밍 대회 C번