만드는 중입니다

아직 만드는 중이라 바뀔 수 있습니다

경로

시간 제한1초메모리 제한1024 MB

요약
각 노드의 부모가 자신보다 작은 약수인 트리에서 길이가 1부터 N까지인 경로의 개수를 각각 구합니다.
난이도

보통10점 중 6점

유형
트리, DFS, 동적 계획법
정답자
아직 제출이 없습니다

문제

1부터 N까지의 자연수로 번호가 매겨진 N개의 노드로 이루어진 트리가 주어진다. 노드 2는 노드 1과 연결되고, 노드 3은 노드 1과 연결된다. 노드 4는 자신보다 작은 약수 1과 2 중 하나와 연결된다. 노드 5는 노드 1과 연결된다. 노드 6은 자신보다 작은 약수 1, 2, 3 중 하나와 연결되며, 이후 노드도 같은 방식으로 연결된다. 길이가 1부터 N까지인 경로마다 그 길이의 경로가 몇 개 있는지 구한다.

입력

첫 줄에 자연수 N (1≤N≤100 0001 \le N \le 100\,000)이 주어진다. 둘째 줄에는 노드 2, 3, 4, ..., N이 각각 연결되는 노드 번호 PiP_i (1≤Pi<N1 \le P_i < N) N-1개가 차례로 주어진다. 위에서 말했듯이 각 PiP_i는 연결되는 노드의 약수이며, 그 노드보다 작아야 한다.

출력

한 줄에 N개의 수를 출력한다. 길이가 1부터 N까지인 경로마다 차례로 그 길이의 경로 개수를 출력한다.

힌트

세 번째 입출력 예에 대한 설명이다. 그림은 그 예제의 트리를 나타낸다. 이 트리에는 길이가 1인 경로가 6개 있으며, 이는 노드 하나로만 이루어진 경로이다. 길이가 2인 경로는 (1, 2), (1, 3), (2, 4), (1, 5), (3, 6)이다. 길이가 3인 경로는 (1, 2, 4), (1, 3, 6), (2, 1, 3), (2, 1, 5), (3, 1, 5)이다. 길이가 4인 경로는 (2, 1, 3, 6), (4, 2, 1, 3), (4, 2, 1, 5), (5, 1, 3, 6)이다. 길이가 5인 경로는 (4, 2, 1, 3, 6) 하나뿐이다. 길이가 6인 경로는 없다.

예제3

  1. 예제 1

    입력
    5
    1 1 2 1
    
    예상 출력
    5 4 4 2 0
    
  2. 예제 2

    입력
    5
    1 1 1 1
    
    예상 출력
    5 4 6 0 0
    
  3. 예제 3

    입력
    6
    1 1 2 1 3
    
    예상 출력
    6 5 5 4 1 0